使用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教程(6):创建网站多列
Apr 02 HTML / CSS
10个很棒的 CSS3 开发工具 推荐
May 16 HTML / CSS
HTML5文档结构标签
Apr 21 HTML / CSS
HTML5 使用 sessionStorage 进行页面传值的方法
Jul 02 HTML / CSS
html5 canvas 画图教程案例分析
Nov 23 HTML / CSS
css3 transform 3d 使用css3创建动态3d立方体(html5实践)
Jan 06 HTML / CSS
html5的自定义data-*属性与jquery的data()方法的使用
Jul 02 HTML / CSS
不可轻视HTML5!App三年内将被html5顶替彻底消失
Nov 18 HTML / CSS
使用HTML5 Canvas API绘制弧线的教程
Mar 22 HTML / CSS
浅谈HTML5 服务器推送事件(Server-sent Events)
Aug 01 HTML / CSS
详解Canvas实用库Fabric.js使用手册
Jan 07 HTML / CSS
使用HTML5加载音频和视频的实现代码
Nov 30 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
PHP5中MVC结构学习
2006/10/09 PHP
php中获取远程客户端的真实ip地址的方法
2011/08/03 PHP
php的ajax简单实例
2014/02/27 PHP
PHP实现通过中文字符比率来判断垃圾评论的方法
2014/10/20 PHP
PHP按符号截取字符串的指定部分的实现方法
2018/09/10 PHP
详解php用static方法的原因
2018/09/12 PHP
JavaScript中Math对象使用说明
2008/01/16 Javascript
初窥JQuery(二) 事件机制(1)
2010/11/25 Javascript
javascript 学习笔记(八)javascript对象
2011/04/12 Javascript
原生js ActiveXObject获取execl里面的值
2013/11/01 Javascript
浅析node.js中close事件
2014/11/26 Javascript
JavaScript中split() 使用方法汇总
2015/04/17 Javascript
AngularJs bootstrap搭载前台框架——js控制部分
2016/09/01 Javascript
微信小程序实现获取自己所处位置的经纬度坐标功能示例
2017/11/30 Javascript
JS实现的全选、全不选及反选功能【案例】
2019/02/19 Javascript
小程序getLocation需要在app.json中声明permission字段
2019/04/04 Javascript
vue-openlayers实现地图坐标弹框效果
2020/09/24 Javascript
Nest.js 授权验证的方法示例
2021/02/22 Javascript
在Python中利用Into包整洁地进行数据迁移的教程
2015/03/30 Python
简单解析Django框架中的表单验证
2015/07/17 Python
python中的格式化输出用法总结
2016/07/28 Python
Python之批量创建文件的实例讲解
2018/05/10 Python
python远程邮件控制电脑升级版
2019/05/23 Python
python等差数列求和公式前 100 项的和实例
2020/02/25 Python
Python爬虫headers处理及网络超时问题解决方案
2020/06/19 Python
详解用Python爬虫获取百度企业信用中企业基本信息
2020/07/02 Python
10个示例带你掌握python中的元组
2020/11/23 Python
德国高品质男装及配饰商城:Cultizm(Raw Denim原色牛仔裤)
2018/04/16 全球购物
澳大利亚当地最大的时装生产商:Cue
2018/08/06 全球购物
音乐表演专业毕业生求职信
2013/10/14 职场文书
求职自荐信
2013/12/14 职场文书
党的群众路线教育实践活动制度建设计划方案
2014/10/31 职场文书
祝酒词范文
2015/08/12 职场文书
比赛口号霸气押韵
2015/12/24 职场文书
Linux安装apache服务器的配置过程
2021/11/27 Servers
javascript进阶篇深拷贝实现的四种方式
2022/07/07 Javascript