码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • CSS 多行文本超链接下划线动效


    先看效果

    image

    乍一看,是不是感觉很简单,仔细一瞅发现事情好像没有那么简单。

    如果十分钟还没想出怎么实现,那就把简历上的“精通css”改成“了解css”……😅

    大部分人第一感觉都是想着用border-bottom去做,但是仔细看一下这个是多行文本,下划线始终在最后一行肯定是不合适的,而且下划线运动轨迹是:鼠标移入-从从到尾显示,鼠标移出-从头到尾消失。

    代码实现

    让我们进入正题,这个效果是使用css的线性渐变linear-gradient实现的,具体代码如下:

    html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Documenttitle>
    <style>
    .container {
    width: 400px;
    }
    .link {
    font-size: 1.2em;
    line-height: 1.6em;
    text-decoration: none;
    font-family: sans-serif;
    color: #333;
    }
    .underline {
    width: calc(100%); /* 兼容IE */
    background-image: linear-gradient(transparent calc(100% - 2px), powderblue 2px);
    background-repeat: no-repeat;
    background-position: right;
    background-size: 0% 100%;
    transition: background-size 1s ease;
    }
    .link:hover .underline {
    background-position: left;
    background-size: 100% 100%;
    }
    style>
    head>
    <body>
    <div class="container">
    <a class="link" href="#">
    <span class="underline">I'm a super cool link because my underline animation works even in
    multiple lines!
    span>
    a>
    div>
    body>
    html>

    这里修改了background-position属性设置背景图像的起始位置,使得鼠标移出后的下划线运动轨迹是从头到尾消失,而不是反过来,如果不设置则是如下效果:

    image

    这个效果代码我就不复制了,把上面的background-position: right;和 hover 中的background-position: left;删掉就是了。

  • 相关阅读:
    在 Visual Studio 2022 中使用文件对比
    10月26日,起立&LG新品首发第五代OLED透明显示屏
    【图像分割】基于差分进化算法优化模糊熵的多级图像阈值分割附matlab代码
    【LeetCode-230】二叉搜索树中第K小的元素
    【JavaScript】js判断一个变量是数组
    postgresql 数据库 timescaledb 函数time_bucket_gapfill()报错解决及更换 license
    简单快速理解常用的正则表达式
    每天一个数据分析题(三百八十四)- 回归与分类
    一套.Net6可落地的微服务、分布式开源项目
    Elasticsearch集群运维,重平衡、分片、宕节点、扩容
  • 原文地址:https://www.cnblogs.com/lwlblog/p/17757416.html
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号