HTML中设置鼠标悬停状态伪类,使用css伪类实现鼠标滑过按钮动画

CSS伪类是用来添加一些选择器的特殊效果。本文就来为大家介绍一下使用css伪类实现鼠标滑过按钮动画的方法。

c1b498ebd31c053bcf7c83f5594d542e.png

前言

按钮,对开发者而言,是非常常见的一个功能。前端通常会对按钮加入一些操作交互样式,增加一些用户体验。

比如:hover样式、点击样式、loading样式等。下面我们通过简单示例在学习一下css3动画和css伪类。

示例一按钮一

button{

position: relative;

width: 100px;

height: 40px;

border: 1px solid #46b0ff;

background: none;

cursor: pointer;

}

button:after{

position: absolute;

content: '';

width: 100%;

height: 100%;

top: 0;

left: 0;

}

.btn-1:after{

opacity: 0;

background: #46b0ff;

transition: all .3s;

z-index: -1;

}

.btn-1:hover:after{

opacity: 1;

}

4c826b9720711286f0f6493454eba343.gif

解析:

1、利用伪类作为鼠标:hover事件后,按钮的背景,这里用到了相对定位(relative)和绝对定位(absolute)

切记:使用绝对定位的元素,父元素一定要用相对定位,否则元素会一直向上找相对定位的元素,直至根节点。

2、这里用transition对:hover事件动画进行描述,0.3s完成动画,改变:after的透明度。all是所有行为。

当然,这里我们还有更简单是实现方式,不用类型,直接改变背景也是ok的,请看代码:按钮一

button{

position: relative;

width: 100px;

height: 40px;

border: 1px solid #46b0ff;

background: none;

cursor: pointer;

background: rgba(70, 176, 255, 0);

transition: all 1s;

}

.btn-1:hover{

background: rgba(70, 176, 255, 1);

}

ok,我们在示例一的基础上,更进一步,请看示例二

示例二按钮二

...

/* 这里省略上方的公共样式 */

.btn-2:after{

width: 0;

background: #f13f84;

transition: all .3s;

z-index: -1;

}

.btn-2:hover:after{

width: 100%;

}

9ec5bad1d93d3bc2ecc8808bf926695b.gif

解析:

1、这里和示例一其实类似,不过这里是改变伪类的宽度。

2、以此类推,我们可以改变伪类的高度,就可以看到向下扩展的动画了。按钮三

...

/* 这里省略上方的公共样式 */

.btn-2:after{

width: 0;

background: #f13f84;

transition: all .3s;

z-index: -1;

}

.btn-2:hover:after{

width: 100%;

}

589d06dd6589baa48611290fa69d322b.gif

更多相关知识请关注前端学习网站

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值