CSS画出各种三角形如等边三角形
内容摘要
下面的代码将演示三角形如何产生
HTML
复制代码代码如下:
<div class="triangles"></div>
LESS
复制代码代码如下:
.triangles {
border: 50px solid transparent
HTML
复制代码代码如下:
<div class="triangles"></div>
LESS
复制代码代码如下:
.triangles {
border: 50px solid transparent
文章正文
下面的代码将演示三角形如何产生
HTML
<div class="triangles"></div>
LESS
.triangles {
border: 50px solid transparent;
border-top-color: #0075a9;
border-right-color: #a89a00;
border-bottom-color: #19a800;
border-left-color: #a90000;
width: 0;
height: 0;
}
表现情况
单个三角形
HTML
<div class="triangle v-top"></div>
<div class="triangle v-right"></div>
<div class="triangle v-bottom"></div>
<div class="triangle v-left"></div>
LESS
.triangle {
border: 30px solid transparent;
width: 0;
height: 0;
&.v-top {
border-top-color: #0075a9;
}
&.v-right {
border-right-color: #a89a00;
}
&.v-bottom {
border-bottom-color: #19a800;
}
&.v-left {
border-left-color: #a90000;
}
}
表现
进阶:等边三角形
由于使用边框制作出三角形的特性,使得默认制作出来的三角形为等腰,如果在特殊情况下需要一个等边的三角形,需要使用特殊的技巧
HTML
<div class="equilateral-triangle"></div>
LESS
.equilateral-triangle {
@side_length: 50px;
@altitude: (@side_length * ( sqrt(5) / 2 ) / 2);
border: @side_length solid transparent;
border-bottom-color: #19a800;
border-left-width: @altitude;
border-right-width: @altitude;
width: 0;
height: 0;
}
表现
HTML
复制代码
代码如下:<div class="triangles"></div>
LESS
复制代码
代码如下:.triangles {
border: 50px solid transparent;
border-top-color: #0075a9;
border-right-color: #a89a00;
border-bottom-color: #19a800;
border-left-color: #a90000;
width: 0;
height: 0;
}
表现情况
单个三角形
HTML
复制代码
代码如下:<div class="triangle v-top"></div>
<div class="triangle v-right"></div>
<div class="triangle v-bottom"></div>
<div class="triangle v-left"></div>
LESS
复制代码
代码如下:.triangle {
border: 30px solid transparent;
width: 0;
height: 0;
&.v-top {
border-top-color: #0075a9;
}
&.v-right {
border-right-color: #a89a00;
}
&.v-bottom {
border-bottom-color: #19a800;
}
&.v-left {
border-left-color: #a90000;
}
}
表现
进阶:等边三角形
由于使用边框制作出三角形的特性,使得默认制作出来的三角形为等腰,如果在特殊情况下需要一个等边的三角形,需要使用特殊的技巧
HTML
复制代码
代码如下:<div class="equilateral-triangle"></div>
LESS
复制代码
代码如下:.equilateral-triangle {
@side_length: 50px;
@altitude: (@side_length * ( sqrt(5) / 2 ) / 2);
border: @side_length solid transparent;
border-bottom-color: #19a800;
border-left-width: @altitude;
border-right-width: @altitude;
width: 0;
height: 0;
}
表现
代码注释