CSS3 按钮边框动画的实现


Posted in HTML / CSS onNovember 12, 2020

先看效果:

CSS3 按钮边框动画的实现

html

<a href="#">
  <span></span>
  <span></span>
  <span></span>
  <span></span>
  Move on
</a>

css3

body {
  margin: 0;
  padding: 0;
  background-color: #035f3c;
}

a {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  color: #16f03a;
  padding: 30px 60px;
  font-size: 30px;
  letter-spacing: 2px;
  text-transform: uppercase;
  text-decoration: none;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
  /* to delete length of animation lines: */
  overflow: hidden;
}

a:before {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  bottom: 2px;
  width: 50%;
  background: rgba(255, 255, 255, 0.05);
}

a span:nth-child(1) {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(to right, #035f3c, #16f03a);
  animation: animate1 2s linear infinite;
  -webkit-animation: animate1 2s linear infinite;
}

@keyframes animate1 {
  0% {
    transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
  }
}

a span:nth-child(2) {
  position: absolute;
  top: 0;
  right: 0;
  width: 2px;
  height: 100%;
  background: linear-gradient(to bottom, #035f3c, #16f03a);
  animation: animate2 2s linear infinite;
  -webkit-animation: animate2 2s linear infinite;
  /* add delay to have continuity on effect*/
  animation-delay: 1s;
}

@keyframes animate2 {
  0% {
    transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
  }
  100% {
    transform: translateY(100%);
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
  }
}

a span:nth-child(3) {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(to left, #035f3c, #16f03a);
  animation: animate3 2s linear infinite;
  -webkit-animation: animate3 2s linear infinite;
}

@keyframes animate3 {
  0% {
    transform: translateX(100%);
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
  }
  100% {
    transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
  }
}

a span:nth-child(4) {
  position: absolute;
  top: 0;
  left: 0;
  width: 2px;
  height: 100%;
  background: linear-gradient(to top, #035f3c, #16f03a);
  animation: animate4 2s linear infinite;
  -webkit-animation: animate4 2s linear infinite;
  /* add delay to have continuity on effect*/
  animation-delay: 1s;
}

@keyframes animate4 {
  0% {
    transform: translateY(100%);
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
  }
  100% {
    transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
  }
}

以上就是CSS3 按钮边框动画的实现的详细内容,更多关于CSS3 按钮边框动画的资料请关注三水点靠木其它相关文章!

HTML / CSS 相关文章推荐
使用css3绘制出各种几何图形
Aug 17 HTML / CSS
CSS3制作精致的照片墙特效
Jun 07 HTML / CSS
CSS3等相关属性制作分页导航实现代码
Dec 24 HTML / CSS
CSS3中使用RGBA设置透明度的示例
Aug 04 HTML / CSS
CSS实现聊天气泡效果
Apr 26 HTML / CSS
20佳惊艳的HTML5应用程序示例分享
May 03 HTML / CSS
用HTML5制作一个简单的桌球游戏的教程
May 12 HTML / CSS
Html5新增标签有哪些
Apr 13 HTML / CSS
HTML5中的Web Notification桌面右下角通知功能的实现
Apr 19 HTML / CSS
详解HTML5将footer置于页面最底部的方法(CSS+JS)
Oct 11 HTML / CSS
iframe跨域的几种常用方法
Nov 11 HTML / CSS
移动端HTML5 input常见问题(小结)
Sep 28 HTML / CSS
CSS3 实现发光边框特效
Nov 11 #HTML / CSS
CSS 说明横向进度条最后显示文字的实现代码
Nov 10 #HTML / CSS
CSS3制作3D立方体loading特效
Nov 09 #HTML / CSS
CSS3实现莲花绽放的动画效果
Nov 06 #HTML / CSS
CSS3制作圆形滚动进度条动画的示例
Nov 05 #HTML / CSS
CSS实现进度条和订单进度条的示例
Nov 05 #HTML / CSS
一篇文章带你学习CSS3图片边框
Nov 04 #HTML / CSS
You might like
PHP获取数组最后一个值的2种方法
2015/01/21 PHP
php的GD库imagettftext函数解决中文乱码问题
2015/01/24 PHP
php+ajax实现无刷新动态加载数据技术
2015/04/28 PHP
php数组随机排序实现方法
2015/06/13 PHP
JavaScript入门教程 Cookies
2009/01/31 Javascript
JavaScript CSS修改学习第五章 给“上传”添加样式
2010/02/19 Javascript
JavaScript之HTMLCollection接口代码
2011/04/27 Javascript
JavaScript在浏览器标题栏上显示当前日期和时间的方法
2015/03/19 Javascript
使用jQuery在对象中缓存选择器的简单方法
2015/06/30 Javascript
原生js实现回复评论功能
2017/01/18 Javascript
js实现瀑布流效果(自动生成新的内容)
2017/03/16 Javascript
vue使用Google地图的实现示例代码
2018/12/19 Javascript
JS实现判断有效的数独算法示例
2019/02/25 Javascript
javascript 函数的暂停和恢复实例详解
2020/04/25 Javascript
vue npm install 安装某个指定的版本操作
2020/08/11 Javascript
[19:26]TNC vs EG (BO3)
2018/06/07 DOTA
python回调函数的使用方法
2014/01/23 Python
python实现带验证码网站的自动登陆实现代码
2015/01/12 Python
python比较两个列表大小的方法
2015/07/11 Python
Python按行读取文件的实现方法【小文件和大文件读取】
2016/09/19 Python
从CentOS安装完成到生成词云python的实例
2017/12/01 Python
在python中按照特定顺序访问字典的方法详解
2018/12/14 Python
对Pycharm创建py文件时自定义头部模板的方法详解
2019/02/12 Python
Python django框架开发发布会签到系统(web开发)
2020/02/12 Python
超全Python图像处理讲解(多模块实现)
2020/04/13 Python
使用phonegap克隆和删除联系人的实现方法
2017/03/31 HTML / CSS
意大利灯具购物网站:Lampade.it
2018/10/18 全球购物
新闻记者个人求职的自我评价
2013/11/28 职场文书
会计专业自荐信范文
2013/12/02 职场文书
岳父生日宴会答谢词
2014/01/13 职场文书
班级口号大全
2014/06/09 职场文书
财务统计员岗位职责
2015/04/14 职场文书
mysql对于模糊查询like的一些汇总
2021/05/09 MySQL
mysql数据库入门第一步之创建表
2021/05/14 MySQL
中国十大神话动漫电影排行榜 哪吒登顶 白蛇缘起排第七
2022/03/21 国漫
Python可视化神器pyecharts绘制地理图表
2022/07/07 Python