加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

如何利用 CSS 3 让点击的按钮形成立体效果的框架?

发布时间:2023-07-26 14:12:49 所属栏目:语言 来源:
导读:今天给大家分享的是用CSS3实现按钮边框带有动画的效果,实现效果及实现代码如下,对新手学习CSS3的使用有一定的参考借鉴价值,感兴趣的朋友可以参考,接下来跟随小编一起看看吧。

html

<a href="#">
今天给大家分享的是用CSS3实现按钮边框带有动画的效果,实现效果及实现代码如下,对新手学习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%);
 
  }
 
}
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章