自学内容网 自学内容网

​CSS技巧专栏:一日一例 13 -纯CSS实现晃晃悠悠背景不停滚动的按钮特效​

CSS技巧专栏:一日一例 13 -纯CSS实现晃晃悠悠背景不停滚动的按钮特效​

大家好,本篇文章给大家带来一个可爱的按钮,像个小宠物等待你抚摸和奖励,不知道它会不会引起你的关注呢?页面上这样的一个按钮,会不会让你忍不住把鼠标移动过去点一下呢?

本例图片

案例分析

这个按钮比之前我们介绍的按钮稍微复杂了一些些。但不外乎就是多了些小小的可爱的动画而已。

间隔的灰色条和白色的条纹布滚动效果,以及鼠标移动上去后,变成了醒目的荧光绿。仔细观察发现,那个滚动的条纹布并没有超过按钮上灰色的边框,而这个按钮,居然在灰色的边框外面还有一层白色的边框。那么,我们把这些样式分解一下:两个边框,可以都写在按钮上,一个用真的边框border,一个用box-shadow来模拟。三个动画:

  • 条纹滚动动画,采用背景色渐变位移动画,绑定在after层上。
  • 像个摇头摆尾的小狗狗一样时不时晃一晃的动画,绑定在按钮上。
  • 响应鼠标悬浮:条纹灰色变荧光绿色,可以用颜色变化,也可以用灰度滤镜。

布局代码

<button class="base">我滚?我摇!</button>

基础样式

:root{
  --main-bg-color: #000;
  --color:#000;
  --hover-color:#993399;
}
button{
  margin: 0.3em;
  outline: 0;
  border: none;
}
.base{
  position: relative;   
  padding: 1rem 3rem; /* 用 padding 撑起按钮的宽度和高度 ,并确保了按钮文字水平方向居中 */
  font-family: "微软雅黑", sans-serif;
  font-size: 1.5rem;  
  line-height: 1.5rem; /* 行高和字号大小相等,可以实现按钮文字在按钮内垂直居中 */ 
  font-weight:700;
  color: var(--color);  /* 文字颜色为预定义的前景色 */
  cursor: pointer;   /* 鼠标移动到按钮上时候的形状:手型 */
  user-select: none;  /* 让用户不能选择按钮上的文字 */
  white-space: nowrap; /* 避免英文单词间的空格导致文字换行 */
  border-radius: 2rem; 
  text-decoration: none; 
  text-transform:uppercase; /* 字母自动修正为大写 */
  transition: all .5s; /* 按钮响应动画效果的持续时间 */
  margin: 1.5rem 2rem;
}

按钮样式

那么我们先来给它两个层:

.line-scroll{
  box-sizin

原文地址:https://blog.csdn.net/uuplay0216/article/details/140724608

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!