
实现透明背景六边形
需求:实现一个六边形,背景色需为透明,border为1px。
解决方案
可以通过多种方式实现透明背景的六边形。
SVG
立即学习“前端免费学习笔记(深入)”;
利用SVG的<polygon>元素,设置fill为透明色,stroke为指定颜色,可以创建六边形:
<svg width="500" height="500"> <polygon points="100,30 140,50 140,90 100,110 60,90 60,50" style="fill: transparent;stroke: #e07cc2; stroke-width:3px;"></polygon> </svg>
CSS
使用CSS的clip-path属性,可以剪裁元素形成六边形,同时设置背景色为透明:
<div class="hexagon-container">
<div class="hexagon"></div>
</div>
<style>
.hexagon-container {
display: flex;
justify-content: center;
align-items: center;
height: 200px;
}
.hexagon {
position: relative;
width: 100px;
height: 100px;
background-color: pink;
clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}
.hexagon:before {
content: "";
position: absolute;
top: 2px;
left: 2px;
width: 96px;
height: 96px;
background-color: #fff;
clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}
</style>以上就是如何用CSS和SVG实现透明背景六边形?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号