css样式表中border在哪(CSS中使用border来创建三角形的基本方法讲解)
类别:Web前端 浏览量:2522
时间:2021-11-08 16:35:42 css样式表中border在哪
CSS中使用border来创建三角形的基本方法讲解比较简单实用的还是使用border来创建三角形,今天主要研究这个的实现
将边框分别设置为红/黄/蓝/绿
- .triangle {
- height: 0;
- width: 0;
- overflow: hidden;
- font-size: 0;
- line-height: 0;
- border-color: #ff0000 #ffff00 #0000ff #008000;
- border-style: solid;
- border-width: 40px 40px 40px 40px;
- }
效果如下:
四个三角形合成一个正方形,大小为80x80,如果我们只想保留其中某个三角形的话,将其它的设置为透明即可,比如(以下css未改变部分与上面相同)
- .triangle {
- border-color: #ff0000 transparent transparent transparent;
- border-width: 40px 40px 40px 40px;
- }
效果:
IE6不支持transparent,所以不会透明而会显示难看的黑色,不过也有解决方法:将透明的部分对应的border-style设为dashed即可
- .triangle {
- border-color: #ff0000 transparent transparent transparent;
- border-style: solid dashed dashed dashed;
- border-width: 40px 40px 40px 40px;
- }
正方形按对角线平分为两个三角形的情况
- .triangle {
- border-color: #ff0000 #ffff00 #0000ff #008000;
- border-style: solid;
- border-width: 0 0 40px 40px;
- }
- .triangle {
- border-color: #ff0000 #ffff00 #0000ff #008000;
- border-style: solid;
- border-width: 0 40px 40px 0;
- }
需要指出的是,此时正方形的大小为40x40
如果将border-width的某一边设为0又会怎么样呢?也算是两种情况
- .triangle {
- border-color: #ff0000 #ffff00 #0000ff #008000;
- border-style: solid;
- border-width: 40px 40px 0 40px;
- }
- .triangle {
- border-color: #ff0000 #ffff00 #0000ff #008000;
- border-style: solid;
- border-width: 40px 40px 40px 0;
- }
结果是长方形,其中一边为80一边为40。宽度被设为0的边框对应方向的边框会形成较大的三角形,且长度加倍
segmentfault的"采纳"的显示其实也是用三角形实现的
上部分是包含'采纳'两个字的块状元素,设置position: relative。下部分用伪类after设置一个position: absolute的块状元素,将两者接在一起。通过border-width设置成长方形而不是正方形,再将下方的三角形去掉即可,看下面的css十分明显,这也是三角形的一个很好的应用
- .accepted-flag:after {
- position: absolute;
- left: 0;
- top: 25px;
- content: '';
- border-width: 9px 18px;
- border-style: solid;
- border-color: #009a61 #009a61 transparent #009a61;
- }
HTML5 Canvas
在你的HTML文件中有以下的canvas元素:
- <canvas id="triangle" height="100" width="100">Triangle</canvas>
- var canvas = document.getElementById('triangle');
- var context = canvas.getContext('2d');
- context.beginPath();
- context.moveTo(0, 0);
- context.lineTo(100, 0);
- context.lineTo(50, 100);
- context.closePath();
- context.fillStyle = "rgb(78, 193, 243)";
- context.fill();
SVG (Scalable Vector Graphics)
这是如何在您的标签,你可以定义一个内联SVG三角形:
- <svg xmlns="http://www.w3.org/2000/svg" version="1.1" class="svg-triangle">
- <polygon points="0,0 100,0 50,100"/>
- </svg>
然后,只需添加一些样式:
- .svg-triangle{
- margin: 0 auto;
- width: 100px;
- height: 100px;
- }
- .svg-triangle polygon {
- fill:#98d02e;
- stroke:#65b81d;
- stroke-width:2;
- }
您可能感兴趣
- css设计文本框及按钮样式(CSS仿网易首页的头部菜单栏按钮和三角形制作方法)
- cssborder三角形怎么画(使用CSS的border属性绘制各种几何形状的方法)
- css如何制作动画效果(CSS制作三角形广告引导文字效果)
- css画三角形几种方法(利用CSS绘制任意角度的扇形示例代码)
- css的border怎么设置三角形(CSS border虚线边框属性教程)
- css样式表中border在哪(CSS中使用border来创建三角形的基本方法讲解)
- 纯css写三角形(老生常谈 使用 CSS 实现三角形的技巧多种方法)
- 庆余年剧组重聚王牌5,宋轶神秘消失,肖战出现一秒抢了李纯风头(庆余年剧组重聚王牌5)
- 巴厘岛旅游攻略(巴厘岛旅游攻略7天多少钱)
- 文莱旅游攻略(文莱旅游攻略介绍)
- 马来西亚旅游攻略(马来西亚旅游攻略自由行攻略)
- 缅甸旅游攻略(缅甸旅游攻略必去景点推荐)
- 《庆余年2》新消息,原班人马,肖战特别出演,这才是最好的安排(庆余年2新消息原班人马)
热门推荐
- php数据错误处理函数(php中错误处理操作实例分析)
- web开发如何正确使用docker(Docker部署web项目的实现)
- canvas绘图白屏或者元素有缺失(高清屏中使用Canvas绘图出现模糊的问题及解决方法)
- phpcurl请求能在日志里记录吗(php使用curl模拟多线程实现批处理功能示例)
- vue插槽的分类(vue具名插槽的基本使用实例)
- 笨办法学python3目录(如何愉快地迁移到 Python 3)
- ASP.NET下载远程图片到本地
- SQL中FOR XML PATH
- 如何用python处理excel表格(零基础使用Python读写处理Excel表格的方法)
- SQL SERVER中@@TRANCOUNT