CSS实现与文字长度相同的下划线

可以使用伪元素和一些样式属性来实现与文字长度相同的下划线。

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Text Underline</title>
    <style>
        li {
            position: relative;
            display: inline-block; /* 使得li元素根据内容调整宽度 */
            padding-bottom: 5px; /* 为下划线留出空间 */
            margin: 5px 0; /* 添加一些垂直间距以便更好地查看效果 */
        }

        li::after {
            content: '';
            position: absolute;
            left: 0;
            bottom: 0;
            width: 100%; /* 设置宽度为li元素的宽度 */
            height: 2px; /* 设置下划线的厚度 */
            background-color: black; /* 设置下划线的颜色 */
        }
    </style>
</head>
<body>
    <ul>
        <li>实现与文字长度相同的下划线</li>
    </ul>
</body>
</html>

在这个示例中,我们使用了::after伪元素来创建下划线。关键步骤包括:

  1. <li>元素设置为position: relative;,这样伪元素可以相对于<li>元素定位。
  2. 使用display: inline-block;确保<li>元素的宽度根据内容调整。
  3. 通过padding-bottom为下划线留出空间。
  4. 使用::after伪元素创建下划线,设置其width100%以确保它与<li>元素的宽度一致,并调整heightbackground-color以设置下划线的厚度和颜色。
相关推荐
我不只是切图仔1 天前
我只是想给网站加个注册验证码,咋就那么难!
前端·后端
该用户已不存在1 天前
macOS是开发的终极进化版吗?
前端·后端
小豆包api1 天前
小豆包AI API × Nano Banana:3D手办 + AI视频生成,「动起来」的神级玩法!
前端·api
布列瑟农的星空1 天前
大话设计模式——观察者模式和发布/订阅模式的区别
前端·后端·架构
龙在天1 天前
Vue3 实现 B站 视差 动画
前端
KenXu1 天前
F2C Prompt to Design、AI 驱动的设计革命
前端
小鱼儿亮亮1 天前
canvas中画线条,线条效果比预期宽1像素且模糊问题分析及解决方案
前端·react.js
@大迁世界1 天前
用 popover=“hint“ 打造友好的 HTML 提示:一招让界面更“懂人”
开发语言·前端·javascript·css·html
伍哥的传说1 天前
Tailwind CSS v4 终极指南:体验 Rust 驱动的闪电般性能与现代化 CSS 工作流
前端·css·rust·tailwindcss·tailwind css v4·lightning css·utility-first
小鱼儿亮亮1 天前
使用Redux的combineReducers对数据拆分
前端·react.js