CSS3制作链接hover下划线动画

效果1


效果2


<html结构>

<nav>

<a href="#" class="top">Hover this link</a>

</nav>

<css样式-效果1>

nav{

text-align: center;

width: 200px;

height: 75px;

line-height: 75px;

background-color: #000;

}

.top{

position: relative;

text-decoration: none;

color: #fff;

font-size: 25px;

}

.top:before{

content: "";

position: absolute;

left: 0;    /* 从左边开始 */

bottom: -2px;

width: 0;    /* 没有hover的时候定义width为0,这样可以实现宽度从0到100%的变化。*/

height: 1px;

background: #fff;    /* 下划线的颜色 */

-webkit-transition: all .3s;    /* 用时 */

transition: all .3s;

}

.top:hover:before{

width: 100%;    /* 结束时下划线的宽度为100% */

right: 0;    /* 到右边结束,不写也没关系 */

}

<css样式-效果2>

nav{

text-align: center;

width: 200px;

height: 75px;

line-height: 75px;

background-color: #000;

}

.top:before{

content: "";

position: absolute;

left: 0;  

bottom: -2px;

width: 100%;    /* 宽度为100% */

height: 1px;

background: #fff;    /* 下划线的颜色 */

transform: scale(0);    /* 这个实现的关键就是scale(0)到scale(1)的变化。*/

transition: all .3s;

}

.top:hover:before {

transform: scale(1);  

/*放大为100%---scale transform的原点是中点,所以会从中间的位置开始动画。---动画有透明渐变的效果,和scale的表现形式有关。*/

}


参考来源:http://www.cnblogs.com/zhangmingze/p/5351983.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • W3C标准中对css3的transition这是样描述的:“css的transition允许css的属性值在一定的...
    青春前行阅读 5,285评论 0 5
  • 1、垂直对齐 如果你用CSS,则你会有困惑:我该怎么垂直对齐容器中的元素?现在,利用CSS3的Transform,...
    kiddings阅读 8,394评论 0 11
  • 本书介绍 你是不是对Django的学习感到迷茫?是不是对网上零星的教程感到绝望?是不是苦于没有可以迅速上手的实例而...
    阡陌3536阅读 5,117评论 0 0
  • body{ background:#f5faff; } .demo_con{ width:960px; margi...
    小忆123阅读 4,806评论 0 0
  • 《诉衷情》 婉约娉婷人世间。 世人哪见碧玉簪? 玉簪睨春风,春红玉颜。 若明月,神顾盼。 红线牵。 北国佳人,南方...
    黑星水生阅读 1,735评论 0 0