利用 border 绘制三角形
三角形实现原理: 设置 width 为 0;height 为 0;
- 有一条横竖边(上下左右)的设置为 border-方向:长度 solid red,这个画的就是底部的直线。其他边使用 border-方向:长度 solid transparent。
css
#triangle-up {
width: 0;
height: 0;
border-left: 50px solid transparent;
border-right: 50px solid transparent;
border-bottom: 100px solid red;
}
#triangle-down {
width: 0;
height: 0;
border-left: 50px solid transparent;
border-right: 50px solid transparent;
border-top: 100px solid red;
}
#triangle-left {
width: 0;
height: 0;
border-top: 50px solid transparent;
border-right: 100px solid red;
border-bottom: 50px solid transparent;
}
#triangle-right {
width: 0;
height: 0;
border-top: 50px solid transparent;
border-left: 100px solid red;
border-bottom: 50px solid transparent;
}
- 有两个横竖边(上下左右)的设置,若斜边是在三角形的右边,这时候设置
top
或bottom
的直线,和右边的斜线。若斜边是在三角形的左边,这时候设置top
或bottom
的直线,和左边的斜线。
css
#triangle-topleft {
width: 0;
height: 0;
border-top: 100px solid red;
border-right: 100px solid transparent;
}
#triangle-topright {
width: 0;
height: 0;
border-top: 100px solid red;
border-left: 100px solid transparent;
}
#triangle-bottomleft {
width: 0;
height: 0;
border-bottom: 100px solid red;
border-right: 100px solid transparent;
}
#triangle-bottomright {
width: 0;
height: 0;
border-bottom: 100px solid red;
border-left: 100px solid transparent;
}