一:旋转下划线加链接文字上闪效果
说明:利用before和after伪元素实现链接文字hover双重效果,也可以单独使用一种。
before:初始下划线为短线,垂直在链接左侧-20px位置,hover后旋转并伸长至链接文字下方,形成下划线效果。这里主要用到transform的rotate属性。
after:初始为读取文字覆盖在链接文字上,hover后向上闪出。
以下是代码,可分别复制到网页的css部分和HTML部分测试效果。
css部分:
.dp { margin:60px auto; width:500px; } .dp a { text-decoration:none; } .dp a span { position:relative; } .dp a span:hover { color:#f00; } /*=======before设置旋转下划线=======*/ .dp a span::before { content:""; height:4px; width:20px; background-color:#f11;/*=======下划线颜色=======*/ position:absolute; left:-20px; top:10px; transition:.3s;/*=======过渡效果时间,这里是0.3秒=======*/ transform: rotate(90deg);/*=======初始下划线设置在右侧垂直角度=======*/ } .dp a span:hover::before { left:0; top:30px; width:100%; height:2px; transform: rotate(180deg);/*=======过渡后下划线旋转角度,这里是180度,也可以设为0度,旋转方向会相反=======*/ } /*=======after设置上闪文字=======*/ .dp a span::after { content:attr(data-hover);/*=======内容读取data-hover=======*/ height:2px; width:100%; position:absolute; left:0; top:0; transition:.2s; opacity: 1; } .dp a span:hover::after { left:0; top:-20px; width:100%; height:2px; opacity: 0; }
复制
html部分:
<p class="dp"><a href="#"><span data-hover="CSDN - 专业开发者社区">CSDN - 专业开发者社区</span></a></p>
复制