CSS3-六边形_html/css_WEB-ITnose

整理了2种方法,看完肯定觉得超简单~

一、旋转型

话不多说先看下需要的样式:

1.transform:rotate(angle)

2.overflow

立即学习“前端免费学习笔记(深入)”;

3.visibility

效果:演示效果,runjs

html结构:

    

为所欲为为所欲为

登录后复制

3层div,结构是不是很简单~接下来要怎么旋转呢?

为了方便理解加了背景

box1:红色

box2:黑色

box3:粉色

 

1.box1旋转120°,box2旋转-60°,box3再旋转-60°,我们的内容放在box3中。

2.经过旋转肯定有超出的部分,对3个div都设置overflow:hidden。

3.box1,box2是用来旋转得到6边形的,所以对他们设置visibility: hidden,box3放内容,需显示,因此设置visibility: visible。

(如果不对box3设置visibility: visible;它会继承box2的visibility: hidden; )

注意div的宽高不要相等,不然得到的就不是6边形咯。

 

经过旋转和对超出部分的隐藏就得到我们想要的6边形了,所有代码如下:

    CSS3—六边形             .box1, .box2, .box3        {            width: 200px;            height: 250px;            overflow: hidden;        }        .box1, .box2        {            visibility: hidden;        }        .box1        {            transform: rotate(120deg);            -ms-transform: rotate(120deg);            -moz-transform: rotate(120deg);            -webkit-transform: rotate(120deg);        }        .box2        {            transform: rotate(-60deg);            -ms-transform: rotate(-60deg);            -moz-transform: rotate(-60deg);            -webkit-transform: rotate(-60deg);        }        .box3        {            transform: rotate(-60deg);            -ms-transform: rotate(-60deg);            -moz-transform: rotate(-60deg);            -webkit-transform: rotate(-60deg);            background-color:pink;            visibility: visible;        }        .box3 p{            color: yellow;            font-size: 22px;            line-height: 200px;            text-align: center;        }    

为所欲为为所欲为

登录后复制

 二、拼接型

看效果:演示效果,runjs

很明显2个三角形加1个矩形,是不是很简单~

三角形请看上一篇:CSS3—三角形

代码如下:

    css—六边形2    .triangleb{        width:0;        height:0;        border-top:0px solid transparent;        border-right:60px solid transparent;        border-bottom:40px solid pink;        border-left:60px solid transparent;    }    .trianglet{        width:0;        height:0;        border-top:40px solid pink;        border-right:60px solid transparent;        border-bottom:0px solid transparent;        border-left:60px solid transparent;    }    .box{        width: 120px;        height: 65px;        background-color: pink;    }

登录后复制

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3110770.html

(0)
上一篇 2025年3月29日 10:48:08
下一篇 2025年3月29日 10:48:16

AD推荐 黄金广告位招租... 更多推荐

发表回复

登录后才能评论