继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【CSS】按钮特效

沧海一幻觉
关注TA
已关注
手记 316
粉丝 34
获赞 198

通过伪元素实现下图效果

HTML代码

<a href="#">RABBIT</a>

CSS代码

body {    background: #353535;
}a {    width: 200px;    display: block;    position: relative;    border: 2px solid #D24D57;    margin: 40px auto;    padding: 14px 16px;    font-size: 20px;    color: #fff;    text-align: center;    text-decoration: none;    overflow: hidden;
}a:after {    content: '';    display: block;    position: absolute;    width: 100%;    height: 0%;    left: 50%;    top: 50%;    z-index: -1;    background: #D24D57;    transform: translateX(-50%) translateY(-50%) rotate(-25deg);    -webkit-transition: all 0.75s ease 0s;    -moz-transition: all 0.75s ease 0s;    -o-transition: all 0.75s ease 0s;    transition: all 0.75s ease 0s;
}a:hover:after {    height: 300%;
}



想要从中间开始扩张开来,需要伪元素设置position: absolute;

然后把top和left都设置成50%,再通过transform的translate设置回-50%。
这个作用是让元素从中心开始发生改变(如果要做改变的话)。

transform: rotate(-25deg)的作用是把伪元素旋转-25度,这样就有倾斜效果了。

最后记得设置伪元素z-index: -1;
这个值的作用是不让伪元素遮住文字层。

a:hover:after {    height: 300%;
}

当鼠标经过<a>标签时,伪元素的高度发生改变。



作者:滑滑兔
链接:https://www.jianshu.com/p/95bb64eacdbc


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP