<s>: The Strikethrough element
The <s>
HTML element renders text with a strikethrough, or a line through it. Use the <s>
element to represent things that are no longer relevant or no longer accurate. However, <s>
is not appropriate when indicating document edits; for that, use the {{HTMLElement("del")}} and {{HTMLElement("ins")}} elements, as appropriate.
{{EmbedInteractiveExample("pages/tabbed/s.html", "tabbed-shorter")}}
Attributes
This element only includes the global attributes.
Accessibility
The presence of the s
element is not announced by most screen reading technology in its default configuration. It can be made to be announced by using the CSS {{cssxref("content")}} property, along with the {{cssxref("::before")}} and {{cssxref("::after")}} pseudo-elements.
s::before,
s::after {
clip-path: inset(100%);
clip: rect(1px, 1px, 1px, 1px);
height: 1px;
overflow: hidden;
position: absolute;
white-space: nowrap;
width: 1px;
}
s::before {
content: " [start of stricken text] ";
}
s::after {
content: " [end of stricken text] ";
}
Some people who use screen readers deliberately disable announcing content that creates extra verbosity. Because of this, it is important to not abuse this technique and only apply it in situations where not knowing content has been struck out would adversely affect understanding.
- Short note on making your mark (more accessible) | The Paciello Group
- Tweaking Text Level Styles | Adrian Roselli
Examples
.sold-out {
text-decoration: line-through;
}
<s>Today's Special: Salmon</s> SOLD OUT<br />
<span class="sold-out">Today's Special: Salmon</span> SOLD OUT
Result
Technical summary
Content categories | Phrasing content, flow content. |
---|---|
Permitted content | Phrasing content. |
Tag omission | None, both the starting and ending tag are mandatory. |
Permitted parents | Any element that accepts phrasing content. |
Implicit ARIA role |
|
Permitted ARIA roles | Any |
DOM interface | {{domxref("HTMLElement")}} |
Specifications
Browser compatibility
See also
- The {{HTMLElement("strike")}} element, alter ego of the
<s>
element, is obsolete and should not be used on websites anymore. - The {{HTMLElement("del")}} element is to be used instead if the data has been deleted.
- The CSS {{cssxref("text-decoration-line")}} property is to be used to achieve the former visual aspect of the
<s>
element.