You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让<li>元素内的text-decoration: line-through实现连续贯穿?

解决flex列表项连续贯穿线问题

问题原因

你当前的.list__item是flex容器,内部的<span>作为独立flex项存在,text-decoration: line-through会分别作用在每个<span>元素上,元素之间的空隙会导致贯穿线断开。

解决方案:用伪元素模拟连续贯穿线

通过给列表项添加伪元素,生成一条覆盖整个列表项宽度的横线,实现连续的贯穿效果,同时保留flex布局的特性:

.list__item {
    display: flex;
    margin-bottom: 10px;
    width: 100%;
    position: relative; /* 为伪元素提供定位基准 */
}

.list__item::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor; /* 自动继承文字颜色 */
    transform: translateY(-50%); /* 让横线垂直居中对齐文字 */
}

补充说明

  • 这个方法不受内部元素布局的影响,无论<span>之间有多少空隙,横线都会贯穿整个列表项的宽度。
  • 如果需要调整线条的粗细或颜色,直接修改伪元素的height和background-color即可。

内容的提问来源于stack exchange,提问作者YoavKlein

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 05:41:03