CSS3制作hover下划线动画


Posted in HTML / CSS onMarch 27, 2017

1、前几天看到Hexo的next主题标题hover效果很炫,自己尝试写了一个,另一个是next的实现,照例先上图

CSS3制作hover下划线动画

2、实现小黑科技

<!-- html结构 -->
 <div>
     <a href="javascript:void(0);" class="demo1">自己实现的hover效果</a>
 </div>
/* css样式 */
        .demo1{
            position: relative;
            text-decoration: none;
            font-size: 20px;
            color: #333;
        }
        .demo1:before{
            content: "";
            position: absolute;
            left: 50%;
            bottom: -2px;
            width: 0;
            height: 2px;
            background: #4285f4;
            transition: all .3s;
        }
        .demo1:hover:before{
            width: 100%;
            left: 0;
            right: 0;
        }

关键在于没有hover的时候定义width为0,这样可以实现宽度从0到100%的变化。

left为50%,目的是为了动画开始的位置是在50%的位置。

3、hexo next主题的官方实现

<!-- html结构 -->
<div>
    <a href="javascript:void(0);" class="demo2">Hexo next主题的实现</a>
</div>
/* css样式 */
        .demo2{
            position: relative;
            text-decoration: none;
            font-size: 20px;
            color: #333;
        }
        .demo2:before{
            content: "";
            position: absolute;
            left: 0;
            bottom: -2px;
            height: 2px;
            width: 100%;
            background: #4285f4;
            transform: scale(0);
            transition: all 0.3s;
        }
        .demo2:hover:before{
            transform: scale(1);
        }

这个实现的关键就是scale(0)到scale(1)的变化。

CSS3的scale transform的原点是中点,所以会从中间的位置开始动画。

4、两者区别

通过动画也看出来,next的动画有透明渐变的效果,和scale的表现形式有关。

第一个实现只是width变化,但是也可以用animation实现和next一样的效果。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

HTML / CSS 相关文章推荐
css3+jq创作含苞待放的荷花
Feb 20 HTML / CSS
html5实现的便签特效(实战分享)
Nov 29 HTML / CSS
使用html5制作loading图的示例
Apr 14 HTML / CSS
html5实现完美兼容各大浏览器的播放器
Dec 26 HTML / CSS
HTML5全屏(Fullscreen)API详细介绍
Apr 24 HTML / CSS
HTML5 canvas基本绘图之绘制五角星
Jun 27 HTML / CSS
HTML5 canvas基本绘图之图形组合
Jun 27 HTML / CSS
配置H5的滚动条样式的示例代码
Mar 09 HTML / CSS
html5 制作地图当前定位箭头的方法示例
Jan 10 HTML / CSS
总结html5自定义属性有哪些
Apr 01 HTML / CSS
Html5之webcoekt播放JPEG图片流
Sep 22 HTML / CSS
CSS3实现的水平标题菜单
Apr 14 HTML / CSS
利用CSS3制作简单的3d半透明立方体图片展示
Mar 25 #HTML / CSS
利用CSS3实现进度条的两种姿势详解
Mar 21 #HTML / CSS
CSS3实现头像旋转效果
Mar 13 #HTML / CSS
用React加CSS3实现微信拆红包动画效果
Mar 13 #HTML / CSS
css3类选择器之结合元素选择器和多类选择器用法
Mar 09 #HTML / CSS
利用Bootstrap实现漂亮简洁的CSS3价格表实例源码
Mar 02 #HTML / CSS
CSS3实现点击放大的动画实例代码
Feb 27 #HTML / CSS
You might like
一个典型的PHP分页实例代码分享
2011/07/28 PHP
php实现的支持断点续传的文件下载类
2014/09/23 PHP
php json_encode()函数返回json数据实例代码
2014/10/10 PHP
PHP读取汉字的点阵数据
2015/06/22 PHP
PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
2016/03/21 PHP
PHP简单判断iPhone、iPad、Android及PC设备的方法
2016/10/11 PHP
详解PHP版本兼容之openssl调用参数
2018/07/25 PHP
js调试工具console.log()方法查看js代码的执行情况
2014/08/08 Javascript
jQuery+css3动画属性制作猎豹浏览器宽屏banner焦点图
2015/03/16 Javascript
jQuery实现的动态伸缩导航菜单实例
2015/05/07 Javascript
nodeJs爬虫获取数据简单实现代码
2016/03/29 NodeJs
jQuery使用animate实现ul列表项相互飘动效果示例
2016/09/16 Javascript
vue.js初学入门教程(1)
2016/11/03 Javascript
vue2.0+ 从插件开发到npm发布的示例代码
2018/04/28 Javascript
原生js实现淘宝放大镜效果
2020/10/28 Javascript
vue动态禁用控件绑定disable的例子
2019/10/28 Javascript
在vue中封装的弹窗组件使用队列模式实现方法
2020/07/23 Javascript
[04:29]DOTA2亚洲邀请赛小组赛第一日 TOP10精彩集锦
2015/02/01 DOTA
详解Python中 sys.argv[]的用法简明解释
2017/12/20 Python
Python爬虫通过替换http request header来欺骗浏览器实现登录功能
2018/01/07 Python
python模拟事件触发机制详解
2018/01/19 Python
python3监控CentOS磁盘空间脚本
2018/06/21 Python
解决pycharm运行出错,代码正确结果不显示的问题
2018/11/30 Python
Numpy之将矩阵拉成向量的实例
2019/11/30 Python
Merrell迈乐澳大利亚网站:购买户外登山鞋
2017/05/28 全球购物
衰败城市英国官网:Urban Decay英国
2020/04/29 全球购物
学校门卫岗位职责
2014/03/16 职场文书
三八节主持词
2014/03/17 职场文书
聘任证明怎么写
2015/03/02 职场文书
小学生读书笔记范文
2015/06/30 职场文书
2016年大学迎新晚会工作总结
2015/10/15 职场文书
nginx优化的六点方法
2021/03/31 Servers
Python基础之函数嵌套知识总结
2021/05/23 Python
Java数组与堆栈相关知识总结
2021/06/29 Java/Android
Python必备技巧之字符数据操作详解
2022/03/23 Python
vscode内网访问服务器的方法
2022/06/28 Servers