博客
关于我
最全面的CSS3鼠标滑过动画按钮集锦(学习记录)
阅读量:324 次
发布时间:2019-03-04

本文共 1276 字,大约阅读时间需要 4 分钟。

set_1:

这一部分使用到的是绘图svg,有基础的绘图模型,比如rect,circle等。然后把svg通过绝对定位在按钮上面,hover出来的效果就是改变svg里面元素的stroke边框属性,包括stroke-width(边框宽度)、stroke-offset:(边框偏移位置)等等属性。文字的hover变动就是改变文字间距了。

set_2:

这一部分使用到的是利用伪元素添加一个箭头,然后箭头设置的left值是负数的。当hover的时候,设置成left:48%居中位置即可。关于文字的移动问题,使用translateX轻松解决。把文字移出外面就可以实现该效果了。

set_3:

这一部分使用到的和set_2部分的其实差不多,但是有一个新东西让我学到了,就是伪元素的content属性可以和attr()元素进行搭配。相当于用css动态添加内容到html里面,而不是使用js。attr()可以接收从html设定的自定义属性值,当hover的时候,将自定义属性写入attr()里面,就可以实现动态显示内容了。

set_4:

第四部分很有意思,实现的是一个类似于波纹的水滴按钮效果。其中最核心的技术应该就是这个animation动画了。这里触发了两个动画,首先,我们要用伪元素生成一下这个隐藏的动画静态内容

.anim:after {  content: '';  position: absolute;  top: 0;  bottom: 0;  left: 0;  right: 0;  border-radius:50%;}

接下来,我们就对这个部分做hover的动画显示。

第一部分动画:背景颜色由有色变为无色。
第二部分动画:宽度由0%到100%
这样一个动画就会变成,hover之后,一个波纹就会从小变大,扩展到整个区域,再变成透明色。其中区域是圆状的。

set_5:

这一部分更加简单了,其实就是隐藏框的平移,难点是要先把整个隐藏框画出来,画出来要借助transform的各种属性来处理。

.set_5_button:after {  content: "";  position: absolute;  top: 0;  left: 0;  width: 500%;  height: 1000%;  background: #838383;  z-index: -1;  transform-origin: 0% 0%;  /* transform: translateX(calc(20% - 25px)) translateY(10%) rotate(-45deg); */  transform: translateY(10%) translateX(16%) rotate(-45deg);  transition: transform .3s;}.set_5_button:hover::after {  transform: translateY(10%) translateX(-25px) rotate(-45deg);}

转载地址:http://zwch.baihongyu.com/

你可能感兴趣的文章
spring启动错误:Could not resolve placeholder
查看>>
选择性估算器绕过行安全策略漏洞
查看>>
对PostgreSQL数据库结构的宏观理解
查看>>
查询某表格上次进行vacuum的时间
查看>>
invalid byte sequence for encoding
查看>>
invalid byte sequence for encoding
查看>>
聊一聊那些应该了解的大佬(飞控,人工智能方向)
查看>>
redis向数组中添加值并查看数组长度
查看>>
JS编写一个函数,计算三个不同数字的大小,按从小到大顺序打印(穷举法)
查看>>
mybatis中like的注意
查看>>
sqlplus的基本使用
查看>>
Oracle删除主表数据
查看>>
Oracle常用SQL
查看>>
技术美术面试问题整理
查看>>
C++学习记录 五、C++提高编程(2)
查看>>
自学linux毕业shell面试题
查看>>
4 Java 访问控制符号的范围
查看>>
第9章 - 有没有替代原因(检验证据)
查看>>
VUE3(八)setup与ref函数
查看>>
Vue之Element标签页保留用户操作缓存。
查看>>