用CSS3怎么实现按钮动态渐变的效果,方法是什么
Admin 2022-07-05 群英技术资讯 719 次浏览
随着目前前端页面的需求不断提升,有些场景需要渐变背景的元素。本文利用div和css3新属性,实现了一个背景渐变的按钮,具体如下:
1.background: linear-gradient 背景为渐变色属性
2.利用css3中动画特性animation,实现背景从左至右变化(color_move)
3.为了实现渐变效果,将background的宽度拉长至400%
上代码:
html:
<div class="btn_demo"> <div class="text">体 验</div> <div class="arrow">»</div> </div>
css:
@keyframes arrow_move { /* 开始状态 */ 0% { left: 130px; } /* 结束状态 */ 100% { left: 140px; } } @keyframes color_move { /* 开始状态 */ 0% { background-position: 0% 0%; /* 水平位置 垂直位置 */ } 50% { background-position: 50% 0%; } /* 结束状态 */ 100% { background-position: 100% 0%; } } .btn_demo { width:180px; height:60px; border-radius: 10px; position: relative; background: linear-gradient( 90deg, #373d42 0%, #2679dd 50%, #373d42 100%); background-size: 400% 100%; animation: color_move 5s infinite ease-in-out alternate; cursor: pointer; } .btn_demo:hover { background: #2679dd; } .btn_demo:active { background: #373d42; } .btn_demo > .text { /* background: yellow; */ width: 50px; text-align: center; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); font-size: 20px; color: #fff; font-weight: bold; } .btn_demo > .arrow { /* background: green; */ width: 20px; text-align: center; position: absolute; font-size: 30px; color: #fff; top: 46%; transform: translateY(-50%); left: 130px; /* 移动130~150px */ /* 调用动画 */ animation-name: arrow_move; /* 持续时间 */ animation-duration: 1s; /* 无限播放 */ animation-iteration-count: infinite; }
效果如下:
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了纯CSS3实现圆圈动态发光特效动画的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
我们先理理思路,大家想一想,梯形是怎么构成的,小学的数学课本都讲过的,就拿等腰梯形来说, 是由两个直角三角形,和一个长方形或正方形组成的,看草图↓ 这意味着,我们要用一个&
HTML是我们每个人使用手机电脑都看得到的东西,其实超文本标记语言的缩写,也就是我们通常所说的网页。目前最新版本是HTML5。本文就给大家分享一下HTML5常见的面试题html5的正确doctype是什么
这篇文章给大家分享的是有关flex布局以及缩放的内容,flex布局是比较实用的,但是对于flex布局比例计算,一些朋友不是很了解,对此这篇文章就给大家来详细的介绍,感兴趣的朋友可以参考一下,接下来一起跟随小编看看吧。
最近翻阅网上资料,查到了一些自己从未用过的CSS,于是记录下来,在有些时候兴许能用得上。1、CSS中简单的运算我们通常用css指定的是静态的结果,而动态结果,如高度,位置等等则需要js来动态进行计算赋值,而其实css自己也能够进行简单的运算,主要是用到了calc这个函数。.div{width:calc(100%-50px);}2、使用CSS实现文字 ...
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008