使用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 08 HTML / CSS
一款css实现的鼠标经过按钮的特效
Sep 11 HTML / CSS
CSS3 @keyframes简单动画实现
Feb 24 HTML / CSS
HTML+CSS3+JS 实现的下拉菜单
Nov 25 HTML / CSS
html5开发之viewport使用
Oct 17 HTML / CSS
深入解析HTML5 Canvas控制图形矩阵变换的方法
Mar 24 HTML / CSS
Html5元素及基本语法详解
Aug 02 HTML / CSS
html5中的一些标签学习(心得)
Oct 18 HTML / CSS
html5简介及新增功能介绍
May 18 HTML / CSS
如何使用amaze ui的分页样式封装一个通用的JS分页控件
Aug 21 HTML / CSS
sass 常用备忘案例详解
Sep 15 HTML / CSS
css3带你实现3D转换效果
Feb 24 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
Cannot modify header information错误解决方法
2008/10/08 PHP
php xml-rpc远程调用
2008/12/19 PHP
PHP session_start()问题解疑(详细介绍)
2013/07/05 PHP
php实现mysql事务处理的方法
2014/12/25 PHP
/etc/php-fpm.d/www.conf 配置注意事项
2017/02/04 PHP
ExtJS 2.0实用简明教程 之ExtJS版的Hello
2009/04/29 Javascript
javascript实现的一个带下拉框功能的文本框
2014/05/08 Javascript
基于JavaScript实现瀑布流效果(循环渐近)
2016/01/27 Javascript
微信小程序 scroll-view实现上拉加载与下拉刷新的实例
2017/01/21 Javascript
移动前端图片压缩上传的实例
2017/12/06 Javascript
jQuery中可见性过滤器简单用法示例
2018/03/31 jQuery
微信小程序导航栏跟随滑动效果的实现代码
2019/05/14 Javascript
详解json串反转义(消除反斜杠)
2019/08/12 Javascript
jquery 时间戳转日期过程详解
2019/10/12 jQuery
vscode 使用Prettier插件格式化配置使用代码详解
2020/08/10 Javascript
[01:28:43]2014 DOTA2华西杯精英邀请赛5 24 DK VS CIS
2014/05/25 DOTA
python使用reportlab实现图片转换成pdf的方法
2015/05/22 Python
python采集百度百科的方法
2015/06/05 Python
Python+django实现文件下载
2016/01/17 Python
python实现用户登录系统
2016/05/21 Python
Python将多个excel表格合并为一个表格
2021/02/22 Python
详解基于django实现的webssh简单例子
2018/07/17 Python
Python变量、数据类型、数据类型转换相关函数用法实例详解
2020/01/09 Python
深入了解Python装饰器的高级用法
2020/08/13 Python
Python xmltodict模块安装及代码实例
2020/10/05 Python
Python ConfigParser模块的使用示例
2020/10/12 Python
印度网上购物首选目的地:Flipkart
2016/08/01 全球购物
公开服务承诺制度
2014/03/26 职场文书
社区平安建设方案
2014/05/25 职场文书
宣传普通话标语
2014/06/27 职场文书
2014年营业员工作总结
2014/11/18 职场文书
钱塘江大潮导游词
2015/02/03 职场文书
2015年办公室人员工作总结
2015/05/15 职场文书
导游词之藏龙百瀑景区
2019/12/30 职场文书
python神经网络编程之手写数字识别
2021/05/08 Python
分析Java中Map的遍历性能问题
2021/06/26 Java/Android