使用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 相关文章推荐
纯CSS绘制漂亮的圆形图案效果
May 07 HTML / CSS
在HTML5中如何使用CSS建立不可选的文字
Oct 17 HTML / CSS
魔幻般冒泡背景的CSS3按钮动画
Feb 27 HTML / CSS
使用纯 CSS 创作一个脉动 loader效果的源码
Sep 28 HTML / CSS
CSS3制作皮卡丘动画壁纸的示例
Nov 02 HTML / CSS
html5 canvas 使用示例
Oct 22 HTML / CSS
谷歌浏览器小字体处理方案即12px以下字体
Dec 17 HTML / CSS
基于HTML5新特性Mutation Observer实现编辑器的撤销和回退操作
Jan 11 HTML / CSS
使用Html5实现异步上传文件,支持跨域,带有上传进度条
Sep 17 HTML / CSS
浅析HTML5:'data-'属性的作用
Jan 23 HTML / CSS
吃透移动端 1px的具体用法
Dec 16 HTML / CSS
Html5 Canvas实现图片标记、缩放、移动和保存历史状态功能 (附转换公式)
Mar 18 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/11/03 PHP
PHP远程调试之XDEBUG
2015/12/29 PHP
PHP 布尔值的自增与自减的实现方法
2018/05/03 PHP
thinkphp5 框架结合plupload实现图片批量上传功能示例
2020/04/04 PHP
jQuery渐变发光导航菜单的实例代码
2013/03/27 Javascript
jQuery中bind()方法用法实例
2015/01/19 Javascript
readonly和disabled属性的区别
2015/07/26 Javascript
js从数组中删除指定值(不是指定位置)的元素实现代码
2016/09/13 Javascript
浅谈jquery上下滑动的注意事项
2016/10/13 Javascript
jQuery+json实现动态创建复杂表格table的方法
2016/10/25 Javascript
JS中用childNodes获取子元素换行会产生一个子元素
2016/12/08 Javascript
easyui简介_动力节点Java学院整理
2017/07/14 Javascript
详解Angular5/Angular6项目如何添加热更新(HMR)功能
2018/10/10 Javascript
vue中实现拖动调整左右两侧div的宽度的示例代码
2020/07/22 Javascript
Vue仿百度搜索功能
2020/12/28 Vue.js
使用pandas实现csv/excel sheet互相转换的方法
2018/12/10 Python
Python 通过调用接口获取公交信息的实例
2018/12/17 Python
python FTP批量下载/删除/上传实例
2019/12/22 Python
Python使用turtle库绘制小猪佩奇(实例代码)
2020/01/16 Python
解决Tensorflow 内存泄露问题
2020/02/05 Python
Python中socket网络通信是干嘛的
2020/05/27 Python
浅析python字符串前加r、f、u、l 的区别
2021/01/24 Python
Html5无刷新修改browser Url的方法
2014/01/15 HTML / CSS
HTML5手指下滑弹出负一屏阻止移动端浏览器内置下拉刷新功能的实现代码
2020/04/10 HTML / CSS
欧缇丽加拿大官方网站:Caudalie加拿大
2019/07/18 全球购物
大学生自我鉴定范文
2013/12/28 职场文书
会计主管岗位职责
2014/01/03 职场文书
小学运动会表扬稿
2014/01/19 职场文书
学校大课间活动方案
2014/01/30 职场文书
央视元宵晚会主持串词
2014/03/25 职场文书
小学教师自我剖析材料
2014/09/29 职场文书
党建工作整改措施
2014/10/28 职场文书
仓库管理员岗位职责
2015/02/03 职场文书
pytorch 如何把图像数据集进行划分成train,test和val
2021/05/31 Python
Linux系统下安装PHP7.3版本
2021/06/26 PHP
Java处理延时任务的常用几种解决方案
2022/06/01 Java/Android