纯CSS绘制三角形
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<style>
.triangle {
width: 0;
height: 0;
border: 50px solid;
border-color: lightblue lightpink lightgreen lightcyan;
}
</style>
<body>
<div class="triangle"></div>
</body>
</html>
结果是四个不同颜色的三角形堆成的边长为50px的正方形,如图所示:
如果其他三个颜色设置为透明色(border-color: transparent transparent lightcyan transparent; 顺序是上右下左),则最后就得出一个三角形,如图所示:
现在三角形会画了,我们可以运用伪类画一个会话框
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<style>
.dialog {
position: relative;
margin-top: 50px;
margin-left: 50px;
padding-left: 20px;
width: 300px;
line-height: 2;
background-color: lightgreen;
color: #fff;
border-radius: 4px;
}
.dialog::before {
content: '';
position: absolute;
border: 8px solid;
border-color: transparent lightgreen transparent transparent;
left: -16px;
top: 8px;
}
</style>
<body>
<div class="dialog">我是会话框!!!</div>
</body>
</html>
结果如图所示: