时间:2021-05-08
最近要模仿一个页面,其中有一个效果就是 三 菜单栏 变形为 X 的效果,
效果如下:
图(1)初始效果
图(2)鼠标悬浮效果
思路:
三横的实现:传统可以用3个span标签来实现,但有一个更加巧妙的方法,1个标签就能实现三横效果,根据张鑫旭大神分享的利用padding用一个标签实现 三 的效果,大概原理是上中下横线分别用 border-top,背景,border-bottom。用background-clip:content-box剪裁,最后用padding上下撑开,实现三横的视觉效果,
X的实现:而变形的X也不需要额外的标签,利用其自身after before伪类 transform旋转,偏移实现。需要耐心的调整角度。
要注意的是,用padding撑开实现三横效果,触发不太灵敏,最好用一个标签包裹着icon标签,在包裹层做:hover触发
下面是代码
<!doctype html><html lang="en"><head> <meta charset="UTF-8" /> <title>Document</title> <style type="text/css"> .icon{ width: 50px; height: 10px; padding: 10px 0; border-top: 10px solid #000; border-bottom: 10px solid #000; background: #000; background-clip: content-box; } .fa{ cursor: pointer; width: 50px; height: 50px; transition: .3s ease; } .fa:hover>.icon{ border: 0; background: none; } .icon:before,.icon:after{ position: absolute; content: ""; width: 60px; height: 60px; transition: .3s ease; -webkit-transition: .3s ease; opacity: 0; } .icon:before{ top: -5px; border-bottom: 10px solid #000; } .icon:after{ top: 15px; border-top: 10px solid #000; } .fa:hover>.icon:before{ opacity: 1; transform: rotate(135deg) translateX(5px) translateY(-25px); -webkit-transform: rotate(135deg) translateX(5px) translateY(-25px); } .fa:hover>.icon:after{ opacity: 1; transform: rotate(-135deg) translateX(20px) translateY(39px); -webkit-transform: rotate(-135deg) translateX(20px) translateY(39px); } </style></head><body> <div class="fa"> <div class="icon"></div> </div> <script type="text/javascript"> </script></body></html>以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
下面通过图文并茂的方式给大家展示下css3制作变形与动画效果css3制作动画的几个属性:变形(transform),过渡(transition)和动画(anim
CSS3动画和JS动画的区别JS实现的是帧动画CSS3实现的是补间动画帧动画:使用定时器,每隔一段时间,更改当前的元素补间动画:过渡(加过渡只要状态发生改变产生
以ppt为例,图片动画效果的设置步骤是: 1、点击主页面上方菜单栏中的【动画】。 2、选择要设置动画的图片。 3、点击菜单栏中的【效果选项】即可。 Mi
一、css3动画☺css3动画相对于通过JavaScript动态改变元素样式性能更好,更加容易。CSS3中有三个关于动画的属性:transform、
本篇文章主要介绍了css3动画过渡实现鼠标跟随导航效果,分享给大家,具体如下:鼠标跟随导航效果效果知识点:html/css布局思维,div+css讲解,css3