博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用CSS绘制三角形
阅读量:6094 次
发布时间:2019-06-20

本文共 1770 字,大约阅读时间需要 5 分钟。

引入

用 CSS 绘制三角形,只是对 border 属性的简单应用。平时使用 border 属性的时候多留意一下,就会发现其中的技巧。下面,我们先看以下代码:

HTML代码:
----------CSS代码:.test{ width: 10px; height: 10px; border-top: 50px solid black; border-right: 50px solid red; border-bottom: 50px solid blue; border-left: 50px solid orange;}

效果如下:

图片描述

不难看出,当盒子内容的宽度和高度远小于边框的时候,边框的显示为等腰梯形。由此我们可以推断,当我们将 div 的宽高都设为 0 的时候,代表盒子内容的白色正方形会消失,于此同时,边框显示为等腰三角形。代码如下:

HTML代码:
----------CSS代码:.test{ width: 0; height: 0; border-top: 50px solid black; border-right: 50px solid red; border-bottom: 50px solid blue; border-left: 50px solid orange;}

效果如下:

图片描述

绘制

此时,我们就可以根据上述的内容画出不同朝向的三角形了,例如:当我们需要一个朝上的三角形,就不需要设置上边框,其他的以此类推。代码如下:

HTML代码:
----------CSS代码:.test1{ width: 0; height: 0; border-right: 50px solid transparent; border-bottom: 50px solid blue; border-left: 50px solid transparent;}.test2{ width: 0; height: 0; border-top: 50px solid transparent; border-bottom: 50px solid transparent; border-left: 50px solid orange;}.test3{ width: 0; height: 0; border-top: 50px solid black; border-right: 50px solid transparent; border-left: 50px solid transparent;}.test4{ width: 0; height: 0; border-top: 50px solid transparent; border-right: 50px solid red; border-bottom: 50px solid transparent;

效果如下:

图片描述

更进一步

在实现绘制的代码中,我们会注意到,每个三角形都有两个边框的 border-color 属性被设置成 transparent。至于为什么,我们可以改变该属性值来尝试一下,代码如下:

HTML代码:
CSS代码:.test{ width: 0; height: 0; border-right: 50px solid red; border-bottom: 50px solid blue; border-left: 50px solid orange;}

效果如下:

图片描述

对比完全设置边框和上面少设置一项边框的效果图,可以看出,橙色和红色三角形各自缺少了上面的一半。由此可知,我们必须设置三个边框的,且位于两侧的边框的 border-color 属性应设置为 transparent。

总结

写这篇总结也是看到最近有人提出该方面问题,想起当初自己做的尝试,所以写出来水一篇文章。写的比较简陋,以后有机会再做充实,请多多指导。

关于使用CSS绘制简单图形,推荐学习

转载地址:http://jvwza.baihongyu.com/

你可能感兴趣的文章
Android UI优化——include、merge 、ViewStub
查看>>
Office WORD如何取消开始工作右侧栏
查看>>
Android Jni调用浅述
查看>>
CodeCombat森林关卡Python代码
查看>>
第一个应用程序HelloWorld
查看>>
iOS 9音频应用播放音频之iOS 9音频播放进度
查看>>
C#数据结构与算法揭秘14
查看>>
modelsim 安装后运行,出现fatal License Error
查看>>
附10 kibana创建新的index patterns
查看>>
/usr/include/glib-2.0/glib/gtypes.h:34:24: fatal error: glibconfig.h: No such file or directory
查看>>
python学习笔记——
查看>>
HDU-1050 Moving Tables
查看>>
为什么应用商店里搜索不到你的App?
查看>>
简单逆向分析修改软件标题
查看>>
Linq中Union与Contact方法用法对比
查看>>
斗地主算法的设计与实现–洗牌和发牌
查看>>
数据库中随机查询数据
查看>>
asp.net首页设置
查看>>
jasmine note
查看>>
android.content.res.TypedArray-深入理解android自定义属性(AttributeSet,TypedArray)
查看>>