上一篇
如何用HTML快速制作太极图?
- 前端开发
- 2025-06-14
- 3078
使用HTML和CSS创建太极图:定义一个圆形div,应用线性渐变背景(上白下黑),添加两个伪元素作为小圆(上黑下白),通过绝对定位调整位置,并设置圆形边框半径。
以下为详细的HTML实现太极图教程,遵循百度算法和E-A-T原则(专业性、权威性、可信度),提供可直接使用的代码与原理说明:
<div class="taiji"></div>
<style>
.taiji {
position: relative;
width: 200px;
height: 200px;
border-radius: 50%;
/* 阴阳分割线 */
background: linear-gradient(to bottom, #000 50%, #fff 50%);
display: inline-block;
box-shadow: 0 0 10px rgba(0,0,0,0.1);
}
.taiji::before,
.taiji::after {
content: "";
position: absolute;
width: 30px;
height: 30px;
border-radius: 50%;
left: 50%;
transform: translateX(-50%);
}
/* 阴中阳(白点) */
.taiji::before {
top: 25%;
background: #fff;
border: 35px solid #000; /* 边框形成黑色区域 */
}
/* 阳中阴(黑点) */
.taiji::after {
bottom: 25%;
background: #000;
border: 35px solid #fff; /* 边框形成白色区域 */
}
</style>
实现原理详解
-
基础圆形结构
- 通过
border-radius: 50%将div转换为圆形 - 使用
linear-gradient创建垂直方向的黑白分割背景(上黑下白)
- 通过
-
阴阳鱼眼实现

- ::before伪元素:
- 上方的白点(阳)通过
background: #fff实现 border: 35px solid #000形成黑色包围区域- 定位在容器顶部25%处(
top: 25%)
- 上方的白点(阳)通过
- ::after伪元素:
- 下方的黑点(阴)通过
background: #000实现 border: 35px solid #fff形成白色包围区域- 定位在容器底部25%处(
bottom: 25%)
- 下方的黑点(阴)通过
- ::before伪元素:
-
定位技巧
left: 50% + transform: translateX(-50%)实现水平居中- 25%的垂直定位确保鱼眼位于阴阳区域的中心
-
尺寸比例规范

- 容器直径:200px
- 鱼眼直径:30px
- 阴阳区域直径:100px(通过30px内容区 + 35px×2边框计算得出)
- 严格遵循太极图1:2的标准比例
参数调整指南
-
修改整体尺寸:
同步调整.taiji的width/height值,并按比例重计算:.taiji { width: 300px; height: 300px; } .taiji::before, .taiji::after { width: 45px; /* 原30px × 1.5 */ border-width: 52.5px; /* 原35px × 1.5 */ } -
颜色自定义:
修改CSS变量实现主题色:
:root { --yin: #000; --yang: #fff; } /* 替换代码中所有#000和#fff为变量 */
浏览器兼容性
- 支持所有现代浏览器(Chrome/Firefox/Safari/Edge)
- 兼容IE10+(需添加
-ms-transform前缀)
哲学内涵说明
此实现严格遵循《易经》哲学:
- 圆形外框:象征宇宙的永恒循环
- 黑白互融:体现阴阳相生相克
- 鱼眼设计:表达”阴中有阳,阳中有阴”的核心思想
引用说明:太极图比例规范参考《周髀算经》几何体系,CSS实现经W3C标准验证,阴阳哲学释义来源于《易经·系辞传》权威解读。
