利用transition属性实现一个简单小巧的hover效果
来源:互联网 发布:李兴华 java 框架 编辑:程序博客网 时间:2024/06/06 02:52
在实际工作中,简单利用css3的属性可以让页面更生动,如下面的例子:
“了解详情”的hover效果比单纯的颜色变换效果更生动。而实现的方式就是简单的利用了css3transition属性。
页面代码结构如下:
<div class="box"> <a href="#"> <span>了解详情</span> <em></em> </a></div>
原理
- 定位一个 初始width为0的em元素,hover的时候再将 width设置为容器的width.
- 再利用transiton对width变化的过程设置过度效果
css如下:
.box a { position: relative; z-index: 0; display: inline-block; width: 158px; height: 38px; line-height: 38px; text-align: center; color: #fff; border: 1px solid #fff; border-radius: 20px;}.box a em { position: absolute; z-index: -1; top: 0px; left: 0px; display: inline-block; width: 0; height: 100%; background-color: #fff; border-radius: 20px; transition: width .3s ease;}.box a:hover span { color: #00aeff;}.box a:hover em { width: 100%; }
利用伪元素可以让代码更简洁,语义化,代码如下:
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title></title> <link rel="stylesheet" type="text/css" href="css/common.css"/> <style> .box { height: 500px; background-color: #4FAEE0; } .box a { position: relative; z-index: 0; display: inline-block; width: 158px; height: 38px; line-height: 38px; text-align: center; color: #fff; border: 1px solid #fff; border-radius: 20px; } .box a:after { content: ''; position: absolute; z-index: -1; top: 0px; left: 0px; display: inline-block; width: 0; height: 100%; background-color: #fff; border-radius: 20px; -moz-transition: width .3s ease; -webkit-transition: width .3s ease; -o-transition: width .3s ease; transition: width .3s ease; } .box a:hover { color: #00aeff; } .box a:hover:after { width: 100%; } </style> </head> <body> <div class="box"> <a href="#">了解详情</a> </div> </body></html>
参考
- https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Transitions/Using_CSS_transitions
- https://developer.mozilla.org/en-US/docs/Web/CSS/transition
(完)
阅读全文
0 0
- 利用transition属性实现一个简单小巧的hover效果
- CSS3 transition属性和Hover效果
- 简单的hover效果的实现
- 利用css3属性:transition-duration来做简单的动画
- hover的transition
- hover的transition
- Html5的CSS3的transition实现简单动画效果
- 利用CSS Transition来实现动画效果
- CSS3的hover+transition实现输入框的渐变色
- 一个小巧简单的c++代码库
- transition属性实现div点击拉伸,再点击收回效果
- 利用DrawerLayout实现简单的抽屉效果
- 利用JQ实现简单的拖曳效果
- CSS过渡效果:transition属性
- 简单的二级导航页面(纯css实现,运用display属性hover)
- css3.0中transition属性设置过度的动态效果
- css3 中transition属性,类似js渐变的效果
- 发布一个简单小巧的ajax操作类
- gradle 查看项目依赖项
- as a
- 07-图6 旅游规划
- linux_yum软件包管理安装
- 华容道经典布局
- 利用transition属性实现一个简单小巧的hover效果
- jmeter 换行获取
- 归并排序
- Resolve Error “ArtifactTransferException: Could not transfer artifact” or “Failure to Transfer” in M
- linux_chmod文件权限修改
- ios-NSURLConnection多线程下的问题
- Canvas实现画图工具
- SpringBoot REST 火推04
- ab 压力测试