关于新手小白不明白css怎么实现六边形,详细操作方法教程。

今天小小编给大家介绍css怎么实现六边形,详细操作方法教程。
操作如下:
css实现六边形的方法:1、将3个p组合在一起,其中包括2个等腰三角形和一个长方形;2、通过将3个长方形旋转不同角度得到正六边形。

2021070311143039124

 

本文操作环境:windows7系统、HTML5&&CSS3版、Dell G3电脑。

css怎么实现六边形?

最近在写一个蜂窝式布局,所以研究了一下六边形的实现原理
实现六边形的俩种方式:
方式一: 一个长方形+两个三角形
首先我们要先了解一下border
95f12c4a49b66746cb6dfadf51c7ea9a-0-1
每个border之间是成45度,利用这点我们可以做出来三角形

<p class="triangle"></p>/*css片段*/.triangle{
    width: 0;
    height: 0;
    border-bottom: 50px solid red;
    border-left: 86px solid transparent;
    border-right: 86px solid transparent;
}

上面代码可以的到一个顶角为120度的等腰三角形
90672a38fa497ef2c7b4c8f5f25690ca-1
创建六边形的方法是将三个P组合在一起,上下120度等腰三角形,中间是矩形(注:border-top/border-bottom决定三角形的高度)
现在让我们实现六边形。

<p class="top-triangle"></p>
<p class="center"></p>
<p class="bottom-triangle"></p>
/*css片段*/
.top-triangle{
    width: 0;
    height: 0;
    border-bottom: 50px solid red;
    border-left: 86px solid transparent;
    border-right: 86px solid transparent;
}
.center{
    width: 172px;
    height: 100px;
    background: red;
}
.bottom-triangle{
    width: 0;
    height: 0;
    border-top: 50px solid red;
    border-left: 86px solid transparent;
    border-right: 86px solid transparent;
}

90672a38fa497ef2c7b4c8f5f25690ca-2
由上面代码我们就可以得到一个正六变形
方式二: 3个长方形旋转不同角度得到正六边形
关键点: overflow: hidden;
transform: rotate()的使用

<p class="six">
    <p class="child">
        <p class="child_child"></p>
    </p></p>/*css片段*/.six,.child,.child_child{
    width: 100px;
    height: 150px;
    overflow: hidden;
}.six{    -webkit-transform: rotate(120deg);    -o-transform: rotate(120deg);    -ms-transform: rotate(120deg);    -moz-transform: rotate(120deg);
    transform: rotate(120deg);
}.child{    -webkit-transform: rotate(-60deg);    -o-transform: rotate(-60deg);    -ms-transform: rotate(-60deg);    -moz-transform: rotate(-60deg);
    transform: rotate(-60deg);
}.child_child{
    background: red;    -webkit-transform: rotate(-60deg);    -o-transform: rotate(-60deg);    -ms-transform: rotate(-60deg);    -moz-transform: rotate(-60deg);
    transform: rotate(-60deg);
}

可以为最里面的p加背景或者图片,外面的俩个p不要加颜色,但是这种方式创建的六边形没有办法添加文字,执行上面代码可以得到下图:
90672a38fa497ef2c7b4c8f5f25690ca-3

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片