登录
首页 >  文章 >  前端

HTML删除线怎么设置?s和del标签使用方法

时间:2025-10-12 22:10:21 282浏览 收藏

HTML删除线怎么设置?本文详细讲解了如何使用``和``标签以及CSS的`text-decoration: line-through`属性来实现HTML删除线效果。``标签适用于表示内容不再准确或相关,如过时的价格信息;``标签则用于标记文档中被删除的内容,常用于修订记录。而CSS方法适用于纯粹的视觉效果,不带语义变化,例如待办事项的完成状态。选择的关键在于理解内容的语义:信息过时用``,内容被删除用``,仅需视觉效果则用CSS。掌握这些技巧,能帮助你更有效地呈现网页内容,提升用户体验和[SEO](https://www.baidu.com/s?wd=SEO)效果。

标签表示内容不再准确或相关,适用于过时信息如旧价格;2. 标签表示内容被删除,适用于文档修订等场景,可配合datetime和cite属性;3. 纯视觉删除线应使用CSS的text-decoration: line-through,用于待办事项完成等无语义变化的情况;4. 选择依据是语义:信息过时用s,内容被删用del,仅视觉效果用CSS。

HTML删除线怎么设置_HTML的s和del标签使用教程

HTML删除线可以通过这两个语义化标签来实现,它们虽然视觉效果相似,但在语义层面有着显著的区别,各自适用于不同的场景。此外,纯粹的视觉需求也可以通过CSS来满足。

解决方案

在HTML中设置删除线,最直接且语义明确的方式就是使用标签。

标签,全称是“strikethrough”,它表示内容已经不再准确或不再相关。想象一下你在一个网站上看到一件商品的原价,现在打折了,原价就会被划掉。这个被划掉的原价,就是“不再准确”的信息。它告诉读者,这部分内容曾经是正确的,但现在已经过时了。

<p>原价:<s>¥199.00</s> 现价:¥99.00</p>
<p>旧的地址:<s>北京市朝阳区某某路123号</s> 新的地址:北京市海淀区某某路456号</p>

标签,全称是“deleted text”,它表示文档中已被删除或移除的内容。这个标签通常用于标记文档修订、版本控制或者追踪修改。它强调的是“内容被删除”这一行为,而不是仅仅“不再准确”。标签还可以配合cite属性(指向解释删除原因的URL)和datetime属性(表示删除发生的时间)来提供更详细的上下文信息。

<p>这篇文章的草稿中,我们曾写道:<del datetime="2023-10-26T14:30:00Z">“AI将完全取代人类工作。”</del> 经过讨论,此观点已修正。</p>
<p>用户评论:<del>(此评论因违反社区规定已被删除)</del> 谢谢您的反馈。</p>

从视觉上看,浏览器默认都会给这两个标签内的文本添加一条横穿的删除线。但它们背后的语义意图,才是我们选择时真正需要考量的。

标签在语义上有什么区别?

说到底,这两个标签最大的区别就在于它们所传达的“意图”或者说“语义”。在我看来,理解这一点是正确使用它们的关键。

标签的语义核心是“不再准确”或“不再相关”。它暗示着内容本身曾经是有效的,但随着时间推移、信息更新,它已经失去了其准确性或关联性。举个例子,一家商店的促销活动,原价被划掉,表示这个价格现在已经不适用了,新的价格才是当前的。它不是说这个价格“被删除了”,而是说它“过时了”。它的作用更像是给读者一个提醒:这部分信息已经失效了,请关注旁边的最新信息。

标签的语义则更为严肃和具体,它强调的是“内容被移除”或“被删除”这一事实。这通常发生在文档修订、版本更新、内容审查等场景。比如,你在编辑一份合同,其中某段条款被删除,这时就应该使用来标记。它不仅仅是视觉上的划掉,更是告诉搜索引擎和辅助技术(如屏幕阅读器),这部分内容在文档的当前版本中已经不存在了。它甚至可以配合datetime属性,精确到秒地记录内容被删除的时间,这在需要追溯历史修改的场景下尤其有用,比如法律文书或学术论文的修订记录。

简单来说,是“这个信息现在不对了”,而是“这个信息被拿掉了”。这种区别,对于构建语义清晰、易于理解和维护的网页内容至关重要。

除了 ,还有其他方法可以实现删除线效果吗?

当然有,而且在某些情况下,它可能是更合适的选择。除了这两个语义标签,我们还可以利用CSS的text-decoration属性来纯粹地实现视觉上的删除线效果。

text-decoration属性是一个非常强大的CSS属性,它可以控制文本的装饰线,包括下划线(underline)、上划线(overline)和删除线(line-through)。

.strikethrough-visual {
  text-decoration: line-through;
}
<p class="strikethrough-visual">这是一段纯粹视觉上被划掉的文字。</p>

什么时候应该用CSS而不是呢?答案很简单:当删除线仅仅是为了“好看”或者“表示状态”,而没有“不再准确”或“内容被删除”的语义时。

举个例子,你有一个待办事项清单(To-Do List),当一个任务完成时,你希望它被划掉。这个“划掉”仅仅是表示任务的状态从“未完成”变成了“已完成”,它并没有说这个任务内容本身“不准确”了,也没有说这个任务“被删除了”。在这种情况下,使用CSS的text-decoration: line-through;是最恰当的。

<ul>
  <li><span class="strikethrough-visual">完成项目报告</span></li>
  <li>安排会议</li>
  <li>回复邮件</li>
</ul>

这样做的好处是,你将内容的语义(

  • 表示列表项)和其展示样式(text-decoration)清晰地分开了。这符合Web开发的最佳实践,即结构(HTML)、样式(CSS)和行为(JavaScript)分离的原则。如果你为了一个纯粹的视觉效果而滥用,反而会给搜索引擎和辅助技术传递错误的语义信息,这在我看来是得不偿失的。

    值得一提的是,HTML早期还有一个标签,它的作用就是纯粹地给文本加删除线,但它是一个纯粹的表示性标签,在HTML5中已经被废弃了。所以,我们应该避免使用它,转而使用CSS或者语义更明确的

    如何选择合适的删除线标签或样式?

    选择正确的删除线方式,其实就是理解你的内容想表达什么。这事儿有点像在厨房里选工具,勺子、叉子、筷子都能吃东西,但吃面条、喝汤、夹菜,各有各的顺手。

    核心原则是:语义优先。 始终问自己,我为什么要给这段文字加上删除线?

    1. 内容“不再准确”或“不再相关”了?

      • 选择:标签。
      • 场景: 旧价格、过时的信息、错误的描述。比如,你更新了一个产品的规格,旧的规格信息就可以用划掉。
      • 例子:

        CPU: Intel i5-9400F Intel i7-12700K

    2. 内容“被删除”或“被修订”了?

      • 选择:标签。
      • 场景: 文档修订历史、法律条文修改、用户评论被管理员删除、文章中的错误内容被修正并移除。它强调的是“移除”这个动作。
      • 例子:

        在会议纪要中,我们曾计划推迟项目启动日期,但最终决定按原计划进行。

    3. 纯粹是视觉效果,没有语义上的“不准确”或“删除”?

      • 选择:CSS text-decoration: line-through;
      • 场景: 待办事项清单中已完成的任务、购物清单中已购买的商品、或者任何仅仅需要视觉上划掉但内容本身没有语义变化的场景。
      • 例子:
      • 完成报告撰写
      • (CSS中.task-completed { text-decoration: line-through; }

    在实际工作中,我发现很多人会混淆这几者,或者为了方便直接用CSS。但从长期维护、可访问性(屏幕阅读器对不同标签的处理可能不同)和搜索引擎优化(SEO)的角度来看,正确地使用语义标签是更专业的做法。当你给内容赋予了正确的语义,它就能更好地被机器理解,这对于信息传递的准确性和效率都有着不可忽视的价值。所以,花点时间思考一下你的删除线到底想表达什么,这绝对是值得的。

    今天关于《HTML删除线怎么设置?s和del标签使用方法》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

  • 最新阅读
    更多>
    课程推荐
    更多>
    • 前端进阶之JavaScript设计模式
      前端进阶之JavaScript设计模式
      设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
      立即学习 543次学习
    • GO语言核心编程课程
      GO语言核心编程课程
      本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
      立即学习 516次学习
    • 简单聊聊mysql8与网络通信
      简单聊聊mysql8与网络通信
      如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
      立即学习 500次学习
    • JavaScript正则表达式基础与实战
      JavaScript正则表达式基础与实战
      在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
      立即学习 487次学习
    • 从零制作响应式网站—Grid布局
      从零制作响应式网站—Grid布局
      本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
      立即学习 485次学习