text-decoration
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
* Some parts of this feature may have varying levels of support.
Thetext-decorationshorthandCSS property sets the appearance of decorative lines on text. It is a shorthand fortext-decoration-line,text-decoration-color,text-decoration-style, and the newertext-decoration-thickness property.
In this article
Try it
text-decoration: underline;text-decoration: underline dotted;text-decoration: underline dotted red;text-decoration: green wavy underline;text-decoration: underline overline #ff3028;<section> <p> I'd far rather be <span>happy than right</span> any day. </p></section>p { font: 1.5em sans-serif;}Text decorations are drawn across descendant text elements. This means that if an element specifies a text decoration, then a child element can't remove the decoration. For example, in the markup<p>This text has <em>some emphasized words</em> in it.</p>, the style rulep { text-decoration: underline; } would cause the entire paragraph to be underlined. The style ruleem { text-decoration: none; } would not cause any change; the entire paragraph would still be underlined. However, the ruleem { text-decoration: overline; } would cause a second decoration to appear on "some emphasized words".
Constituent properties
This property is a shorthand for the following CSS properties:
Syntax
text-decoration: underline;text-decoration: overline red;text-decoration: none;/* Global values */text-decoration: inherit;text-decoration: initial;text-decoration: revert;text-decoration: revert-layer;text-decoration: unset;Thetext-decoration property is specified as one or more space-separated values representing the various longhand text-decoration properties.
Values
text-decoration-lineSets the kind of decoration used, such as
underlineorline-through.text-decoration-colorSets the color of the decoration.
text-decoration-styleSets the style of the line used for the decoration, such as
solid,wavy, ordashed.text-decoration-thicknessSets the thickness of the line used for the decoration.
Formal definition
| Initial value | as each of the properties of the shorthand:
|
|---|---|
| Applies to | all elements. It also applies to::first-letter and::first-line. |
| Inherited | no |
| Computed value | as each of the properties of the shorthand:
|
| Animation type | as each of the properties of the shorthand:
|
Formal syntax
text-decoration =
<'text-decoration-line'>||
<'text-decoration-thickness'>||
<'text-decoration-style'>||
<'text-decoration-color'>
<text-decoration-line> =
none|
[underline||overline||line-through||blink]|
spelling-error|
grammar-error
<text-decoration-thickness> =
auto|
from-font|
<length-percentage>
<text-decoration-style> =
solid|
double|
dotted|
dashed|
wavy
<text-decoration-color> =
<color>
<length-percentage> =
<length>|
<percentage>
Examples
>Demonstration of text-decoration values
.under { text-decoration: underline red;}.over { text-decoration: wavy overline lime;}.line { text-decoration: line-through;}.plain { text-decoration: none;}.underover { text-decoration: dashed underline overline;}.thick { text-decoration: solid underline purple 4px;}.blink { text-decoration: blink;}<p>This text has a line underneath it.</p><p>This text has a line over it.</p><p>This text has a line going through it.</p><p> This <a href="#">link will not be underlined</a>, as links generally are by default. Be careful when removing the text decoration on anchors since users often depend on the underline to denote hyperlinks.</p><p>This text has lines above <em>and</em> below it.</p><p> This text has a really thick purple underline in supporting browsers.</p><p> This text might blink for you, depending on the browser you use.</p>Result
Specifications
| Specification |
|---|
| CSS Text Decoration Module Level 4> # text-decoration-property> |
| Scalable Vector Graphics (SVG) 2> # TextDecorationProperties> |
Browser compatibility
See also
- The individual text-decoration properties are
text-decoration-line,text-decoration-color,text-decoration-style, andtext-decoration-thickness. - The
text-decoration-skip-ink,text-underline-offset, andtext-underline-positionproperties also affect text-decoration, but are not included in the shorthand. - The
list-styleproperty controls the appearance of items in HTML<ol>and<ul>lists. - SVG
text-decorationattribute