使用CSS3实现按钮悬停闪烁动态特效代码


Posted in HTML / CSS onAugust 30, 2021

我们介绍了使用CSS3 column系列属性创建瀑布流布局的方法,感兴趣的朋友可以去了解一下~

我们先来看看效果图

使用CSS3实现按钮悬停闪烁动态特效代码

下面我们来研究一下是怎么实现这个效果的:

首先是HTML部分,定义一个div容器包裹button按钮,在按钮中使用标签对来包含按钮文本

<div id="shiny-shadow">
 <button><span>鼠标悬停</span></button>
</div>

使用CSS3实现按钮悬停闪烁动态特效代码

然后开始定义css样式来进行修饰:调整布局样式、色彩范围

#shiny-shadow {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
  background: #1c2541;
}
button {
  border: 2px solid white;
  background: transparent;
  text-transform: uppercase;
  color: white;
  padding: 15px 50px;
  outline: none;
}
span {
  z-index: 20;
}

使用CSS3实现按钮悬停闪烁动态特效代码

接着制作一闪而过的覆盖层:

使用:after选择器制作一个带透明度的长方形,让它相对于button按钮进行绝对定位

button {
  position: relative;
}
button:after {
    content: '';
    display: block;
    position: absolute;
    background: white;
    width: 50px;
    height: 125px;
    opacity: 20%;
}

使用CSS3实现按钮悬停闪烁动态特效代码

在最终效果中,一闪而过的是一个倾斜的长方形;因此我们添加一个transform: rotate(-45deg);样式

button:after {
    transform: rotate(-45deg);
}

使用CSS3实现按钮悬停闪烁动态特效代码

使用top属性和left属性控制长方形的位置

button:after {
    top: -2px;
    left: -1px;
}

使用CSS3实现按钮悬停闪烁动态特效代码

最后实现按钮悬停闪烁动画特效

因为是悬停效果,所以要使用到:hover选择器;我们要设置鼠标悬停时长方形的位置

使用CSS3实现按钮悬停闪烁动态特效代码

button:hover:after {
  left: 120%;
}

这样突然变换位置不是我们要的效果,可以使用transition属性添加一个过渡效果,因为该属性是css3的一个新属性,要添加前缀来兼容其他浏览器

button:hover:after {
  left: 120%;
  transition: all 600ms cubic-bezier(0.3, 1, 0.2, 1);
   -webkit-transition: all 600ms cubic-bezier(0.3, 1, 0.2, 1);
}

使用CSS3实现按钮悬停闪烁动态特效代码

大致实现了,再修饰一下。

只想要button按钮范围内显示长方形覆盖层,那么可给button标签添加一个overflow: hidden;样式

button {
  overflow: hidden;
}

使用CSS3实现按钮悬停闪烁动态特效代码

可以看出覆盖层的位置还有点问题,最终效果中覆盖层一开始是不显示的,我们使用top属性和left属性来调整一下

button:after {
    top: -36px;
    left: -100px;
}

使用CSS3实现按钮悬停闪烁动态特效代码

以上就是使用CSS3实现按钮悬停闪烁动态特效的详细内容。

到此这篇关于使用CSS3实现按钮悬停闪烁动态特效的文章就介绍到这了,更多相关CSS3按钮悬停闪烁动态内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

 
HTML / CSS 相关文章推荐
详解CSS3开启硬件加速的使用和坑
Aug 21 HTML / CSS
CSS3 优势以及网页设计师如何使用CSS3技术
Jul 29 HTML / CSS
让IE可以变相支持CSS3选择器
Jan 21 HTML / CSS
CSS3 绘制BMW logo实的现代码
Apr 25 HTML / CSS
用css3写出气球样式的示例代码
Sep 11 HTML / CSS
css3 clip实现圆环进度条的示例代码
Feb 07 HTML / CSS
CSS3实现王者荣耀匹配人员加载页面的方法
Apr 16 HTML / CSS
html5 touch事件实现触屏页面上下滑动(二)
Mar 10 HTML / CSS
canvas线条的属性详解
Mar 27 HTML / CSS
详解Html5页面实现下载文件(apk、txt等)的三种方式
Oct 22 HTML / CSS
详解CSS故障艺术
May 25 HTML / CSS
css中z-index: 0和z-index: auto的区别
Aug 23 HTML / CSS
深入理解CSS 中 transform matrix矩阵变换问题
Aug 30 #HTML / CSS
CSS+HTML 实现顶部导航栏功能
Aug 30 #HTML / CSS
HTML5 语义化标签(移动端必备)
Aug 23 #HTML / CSS
CSS3 Tab动画实例之背景切换动态效果
Aug 23 #HTML / CSS
CSS 使用 resize 实现图片拖拽切换预览功能(强大功能)
如何使用 resize 实现图片切换预览功能
Aug 23 #HTML / CSS
css中z-index: 0和z-index: auto的区别
Aug 23 #HTML / CSS
You might like
php分页代码学习示例分享
2014/02/20 PHP
ThinkPHP3.1新特性之G方法的使用
2014/06/19 PHP
PHP合并数组+号和array_merge的区别
2015/06/25 PHP
php array_values 返回数组的所有值详解及实例
2016/11/12 PHP
thinkPHP框架乐观锁和悲观锁实例分析
2019/10/30 PHP
图像替换新技术 状态域方法
2010/01/28 Javascript
JavaScript 实现类的多种方法实例
2013/05/01 Javascript
artDialog双击会关闭对话框的修改过程分享
2013/08/05 Javascript
node.js中的path.dirname方法使用说明
2014/12/09 Javascript
Angular用来控制元素的展示与否的原生指令介绍
2015/01/07 Javascript
js正则表达式验证邮件地址
2015/11/12 Javascript
jQuery使用$.each遍历json数组的简单实现方法
2016/04/18 Javascript
详解win7 cmd执行vue不是内部命令的解决方法
2017/07/27 Javascript
[js高手之路]从原型链开始图解继承到组合继承的产生详解
2017/08/28 Javascript
JavaScript对象拷贝与赋值操作实例分析
2018/12/10 Javascript
从0到1搭建Element的后台框架的方法步骤
2019/04/10 Javascript
使用vue-router切换页面时,获取上一页url以及当前页面url的方法
2019/05/06 Javascript
[03:30]完美盛典趣味短片 CSGO2019年度名场面
2019/12/07 DOTA
CentOS 6.5下安装Python 3.5.2(与Python2并存)
2017/06/05 Python
python for循环输入一个矩阵的实例
2018/11/14 Python
python单例设计模式实现解析
2020/01/07 Python
keras-siamese用自己的数据集实现详解
2020/06/10 Python
HTML5时代CSS设置漂亮字体取代图片
2014/09/04 HTML / CSS
CSS3 边框效果
2019/11/04 HTML / CSS
html5 音乐播放器 audio 标签使用概述
2013/07/15 HTML / CSS
澳大利亚领先的在线礼品网站:Gifts Australia
2020/08/15 全球购物
医药营销专业个人自荐信
2013/09/29 职场文书
出口公司经理求职简历中的自我评价
2013/10/13 职场文书
cf收人广告词大全
2014/03/14 职场文书
环保项目建议书
2014/08/26 职场文书
捐助倡议书
2015/01/19 职场文书
高中数学课堂教学反思
2016/02/18 职场文书
《平移和旋转》教学反思
2016/02/19 职场文书
《七月的天山》教学反思
2016/02/19 职场文书
在js中修改html body的样式
2021/11/11 Javascript
Win11任务栏太宽了怎么办?一招解决Win11任务栏太宽问题
2021/11/21 数码科技