前端中,有时需要在三角形,五边形,六边形甚至星形等不规则图形内放入背景图或者内容。
这里,主要使用了CSS中一个clip-path的属性来实现不规则图形。
效果图:
<!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>不规则图形</title>
<style>
* { padding: 0; margin: 0; }
.box {
width: 1200px;
margin: 100px auto;
display: flex;
flex-wrap: wrap;
}
.img {
margin: 0 10px;
width: 200px;
height: 200px;
background-image: url('./electricity.gif');
background-size: 100% 100%;
}
.triangle { clip-path: polygon(50% 0, 100% 100%, 0 100%); }
.five { clip-path: polygon(50% 0, 100% 50%, 100% 100%, 0 100%, 0 50%); }
.six { clip-path: polygon(25% 0, 75% 0, 100% 50%, 75% 100%, 25% 100%, 0 50%); }
</style>
</head>
<body>
<div class="box">
<div class="triangle img"></div>
<div class="five img"></div>
<div class="six img"></div>
</div>
</body>
</html>