css制作蜂巢
使用CSS制作蜂巢效果
基础六边形结构
通过CSS的clip-path属性可以快速创建六边形形状。以下代码定义了一个六边形:
.hexagon {
width: 100px;
height: 110px;
background-color: #ffcc00;
clip-path: polygon(
50% 0%, 100% 25%,
100% 75%, 50% 100%,
0% 75%, 0% 25%
);
}
蜂巢网格布局
利用display: flex和负边距实现交错排列:

.honeycomb {
display: flex;
flex-wrap: wrap;
width: 300px;
}
.hexagon {
margin: 0 -13px; /* 重叠部分 */
}
.row:nth-child(even) {
margin-left: 60px; /* 偶数行偏移 */
}
响应式设计
通过CSS变量控制尺寸变化:

:root {
--hex-size: 10vw;
}
@media (max-width: 600px) {
:root {
--hex-size: 20vw;
}
}
3D效果增强
添加过渡和阴影创造立体感:
.hexagon {
transition: transform 0.3s;
box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
.hexagon:hover {
transform: translateY(-5px) rotate(5deg);
z-index: 10;
}
替代方案:伪元素法
不使用clip-path的兼容方案:
.hexagon {
position: relative;
width: 100px;
height: 57px;
background-color: #ffcc00;
}
.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: 28px solid #ffcc00;
}
.hexagon:after {
top: 100%;
border-top: 28px solid #ffcc00;
}






