当前位置:首页 > CSS

css制作六边形

2026-01-15 11:44:58CSS

使用 CSS 制作六边形

方法一:使用 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 中的百分比值为六边形六个顶点的坐标,依次为:顶部中点、右上角、右下角、底部中点、左下角、左上角。

方法二:利用伪元素旋转

通过旋转伪元素叠加实现六边形效果,兼容性较好。

css制作六边形

.hexagon {
  width: 100px;
  height: 57.74px; /* 高度 = 宽度 × (√3 / 2) */
  background-color: #3498db;
  position: relative;
  margin: 28.87px 0; /* 边距 = 高度 / 2 */
}

.hexagon:before,
.hexagon:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: inherit;
}

.hexagon:before {
  transform: rotate(60deg);
}

.hexagon:after {
  transform: rotate(-60deg);
}

关键点

  • 六边形高度与宽度的比例为 √3/2(约 0.866)。
  • 伪元素通过旋转 60° 和 -60° 补全六边形的另外两部分。

方法三:SVG 内联

直接使用 SVG 绘制六边形,嵌入到 HTML 中。

css制作六边形

<svg width="100" height="115" viewBox="0 0 100 115">
  <polygon points="50 0, 100 25, 100 75, 50 100, 0 75, 0 25" fill="#3498db" />
</svg>

优势

  • SVG 为矢量图形,缩放无损清晰度。
  • 可通过 CSS 控制填充色和动画。

六边形布局技巧

若需将多个六边形拼接为蜂窝网格,需注意以下 CSS:

.hex-grid {
  display: flex;
  flex-wrap: wrap;
  margin-left: 50px; /* 偏移半个六边形宽度 */
}

.hexagon {
  margin-right: -25px; /* 重叠部分 */
  margin-bottom: -14px; /* 垂直重叠 */
}

原理

  • 通过负边距和偏移实现六边形的紧密排列。

标签: css六边形
分享给朋友:

相关文章

css按钮制作

css按钮制作

基础按钮样式 使用CSS创建基础按钮需要定义padding、background-color、border和border-radius等属性。以下是一个简单的按钮样式示例: .button {…

vue制作css

vue制作css

在Vue中制作CSS的方法 Vue提供了多种灵活的方式来编写和管理CSS,可以根据项目需求选择适合的方法。 使用内联样式 内联样式可以直接在Vue组件的模板中编写,适用于简单的样式需求。 <…

怎么制作css表格

怎么制作css表格

使用HTML和CSS创建表格 HTML提供<table>标签用于创建表格结构,CSS用于控制样式。以下是一个基础示例: <table class="styled-table">…

div和css制作

div和css制作

使用 div 和 CSS 制作网页布局 HTML 结构 通过 div 标签划分页面区域,例如头部、主体、侧边栏和页脚: <div class="container"> <…

css制作图标

css制作图标

使用CSS制作图标的方法 使用伪元素和边框 通过CSS的伪元素和边框属性可以创建简单的几何形状图标。例如,制作一个三角形图标: .triangle { width: 0; heigh…

css 制作表单

css 制作表单

使用CSS制作表单的基本方法 创建表单时,HTML负责结构,CSS负责样式。表单元素包括输入框、按钮、下拉菜单等,通过CSS可以统一风格并提升用户体验。 HTML结构示例 <form cla…