CSS问题:为什么我们这样使用border属性可以画出各式各样的三角形?
我们常常可以通过设置各个方向上的border的大小和颜色(设置为透明或其他颜色)来画出各种三角形,但是我始终不太理解它为什么可以?当我需要一个三角形的时候,只是按照我之前见过的做法照葫蒌画瓢,试着试着就画出来。
如下代码所示,它是如何绘制出这个倒着的三角
<div class="triangle left"></div>
<style>
* {
margin: 0;
padding: 0;
}
body {
background: #F2F2B6;
position: relative;
}
.left {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-100%, -50%);
}
div {
width: 0;
height: 0;
border-top: 150px solid #FF6D00;
border-left: 75px solid transparent;
border-right: 75px solid transparent;
}
</style>
结果:
疑问:
理解成一个正方形,分四块,如下图,上右下左。你的代码,就是下面三角形为0 左右 小,上面独大。
你把 width、height 写上值,border-left、border-right写上颜色,你就可以理解了,其实就是一个上边框
倒着的三角形图标参考代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<style type="text/css">
.top{
width:0;
height:0;
border:10px solid transparent;
border-bottom:10px solid red;
}
</style>
<body>
<div class="top"></div>
</body>
</html>
运行结果:
也可以看看这篇博客喔!https://liuze.blog.csdn.net/article/details/110406593