text-decoration-line
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.
The text-decoration-line
CSS property sets the kind of decoration that is used on text in an element, such as an underline or overline.
Try it
text-decoration-line: none;
text-decoration-line: underline;
text-decoration-line: overline;
text-decoration-line: line-through;
text-decoration-line: underline overline;
text-decoration-line: underline line-through;
<section id="default-example">
<p>
I'd far rather be
<span class="transition-all" id="example-element">happy than right</span>
any day.
</p>
</section>
p {
font: 1.5em sans-serif;
}
When setting multiple line-decoration properties at once, it may be more convenient to use the text-decoration
shorthand property instead.
Syntax
/* Single keyword */
text-decoration-line: none;
text-decoration-line: underline;
text-decoration-line: overline;
text-decoration-line: line-through;
text-decoration-line: blink;
text-decoration-line: spelling-error;
text-decoration-line: grammar-error;
/* Multiple keywords */
text-decoration-line: underline overline; /* Two decoration lines */
text-decoration-line: overline underline line-through; /* Multiple decoration lines */
/* Global values */
text-decoration-line: inherit;
text-decoration-line: initial;
text-decoration-line: revert;
text-decoration-line: revert-layer;
text-decoration-line: unset;
The text-decoration-line
property is specified as none
, or one or more space-separated values from the list below.
Values
none
-
Produces no text decoration.
underline
-
Each line of text has a decorative line beneath it.
overline
-
Each line of text has a decorative line above it.
line-through
-
Each line of text has a decorative line going through its middle.
blink
-
The text blinks (alternates between visible and invisible). Conforming user agents may not blink the text. This value is deprecated in favor of CSS animations.
spelling-error
-
Each line of text uses the user agents' method of highlighting spelling mistakes, which is a dotted red line in most browsers.
grammar-error
-
Each line of text uses the user agents' method of highlighting grammar mistakes, which is a dotted green line in most browsers.
Note:
When using spelling-error
and grammar-error
values, the browser disregards the other properties in the text-decoration
shorthand (such as text-underline-position
, color
, or stroke
).
Formal definition
Initial value | none |
---|---|
Applies to | all elements. It also applies to ::first-letter and ::first-line . |
Inherited | no |
Computed value | as specified |
Animation type | discrete |
Formal syntax
Examples
Basic example
<p class="wavy">Here's some text with wavy red underline!</p>
<p class="both">This text has lines both above and below it.</p>
.wavy {
text-decoration-line: underline;
text-decoration-style: wavy;
text-decoration-color: red;
}
.both {
text-decoration-line: underline overline;
}
Errors example
In this example, the first paragraph contains a spelling mistake and uses the browser's styling for spelling errors on the misspelled word. The second paragraph uses the browser's styling for grammar errors. There is no styling change in browsers that do not support these text-decoration-line
values.
<p>This text contains a <span class="spelling">speling</span> mistake.</p>
<p class="grammar">This text contain grammatical errors.</p>
.spelling {
text-decoration-line: spelling-error;
}
.grammar {
text-decoration-line: grammar-error;
}
Specifications
Specification |
---|
CSS Text Decoration Module Level 3 # text-decoration-line-property |
Browser compatibility
Report problems with this compatibility data on GitHubdesktop | mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
text-decoration-line | ||||||||||||
blink | ||||||||||||
grammar-error | ||||||||||||
line-through | ||||||||||||
none | ||||||||||||
overline | ||||||||||||
spelling-error | ||||||||||||
underline |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support
- In development. Supported in a pre-release version.
- In development. Supported in a pre-release version.
- No support
- No support
- Deprecated. Not for use in new websites.
- See implementation notes.
- Requires a vendor prefix or different name for use.
- Has more compatibility info.
See also
- When setting multiple line-decoration properties at once, it may be more convenient to use the
text-decoration
shorthand property instead, which also includes: text-underline-offset
::spelling-error
::grammar-error