css如何制作六边形
使用CSS制作六边形
六边形可以通过CSS的clip-path属性或伪元素结合旋转和定位来实现。以下是两种常见方法:
方法一:使用clip-path属性
clip-path允许直接裁剪元素为六边形形状,代码简洁且易于调整大小和比例。

.hexagon {
width: 100px;
height: 110px;
background-color: #3498db;
clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}
参数说明:

polygon()定义六边形的六个顶点坐标,按顺时针或逆时针顺序排列。- 百分比值基于元素的宽高,确保六边形比例正确。
方法二:伪元素旋转
通过伪元素和旋转实现传统六边形效果,兼容性更好。
.hexagon {
width: 100px;
height: 55px;
background-color: #3498db;
position: relative;
margin: 25px 0;
}
.hexagon:before,
.hexagon:after {
content: "";
position: absolute;
width: 0;
border-left: 50px solid transparent;
border-right: 50px solid transparent;
}
.hexagon:before {
bottom: 100%;
border-bottom: 25px solid #3498db;
}
.hexagon:after {
top: 100%;
border-top: 25px solid #3498db;
}
关键点:
- 主元素为矩形,高度为宽度的一半。
- 伪元素通过边框三角形拼接成六边形的顶部和底部。
border-width控制六边形尖角的高度。
调整与扩展
- 修改
width和height可缩放六边形大小。 - 添加
transform: rotate(30deg)可改变六边形方向。 - 结合
hover效果或动画增强交互性。
两种方法各有优劣:clip-path代码更简洁,但部分旧浏览器不支持;伪元素兼容性更好,但需更多代码。根据项目需求选择合适方案。






