The text-underline-offset CSS property sets the offset distance of an underline text decoration line (applied using text-decoration) from its original position.
text-underline-offset is not part of the text-decoration shorthand. While an element can have multiple text-decoration lines, text-underline-offset only impacts underlining, and not other possible line decoration options such as overline or line-through.
Syntax
/* Single keyword */ text-underline-offset: auto; /* length */ text-underline-offset: 0.1em; text-underline-offset: 3px; /* percentage */ text-underline-offset: 20%; /* Global values */ text-underline-offset: inherit; text-underline-offset: initial; text-underline-offset: unset;
The text-underline-offset property is specified as a single value from the list below.
Values
auto- The browser chooses the appropriate offset for underlines.
<length>- Specifies the offset of underlines as a
<length>, overriding the font file suggestion and the browser default. It is recommended to useemunits so the offset scales with the font size. <percentage>- Specifies the offset of underlines as a
<percentage>of 1 em in the element's font. A percentage inherits as a relative value, and so therefore scales with changes in the font. For a given application of this property, the offset is constant across the whole box that the underline is applied to, even if there are child elements with different font sizes or vertical alignment.
Formal definition
| Initial value | auto |
|---|---|
| Applies to | all elements. It also applies to ::first-letter and ::first-line. |
| Inherited | yes |
| Percentages | refer to the font size of the element itself |
| Computed value | as specified |
| Animation type | by computed value type |
Formal syntax
auto | <length> | <percentage>
Examples
<p class="oneline">Here's some text with an offset wavy red underline!</p> <br> <p class="twolines">This text has lines both above and below it. Only the bottom one is offset.</p>
p {
text-decoration: underline wavy red;
text-underline-offset: 1em;
}
.twolines {
text-decoration-color: purple;
text-decoration-line: underline overline;
}
Specifications
| Specification | Status | Comment |
|---|---|---|
| CSS Text Decoration Module Level 4 The definition of 'text-underline-offset' in that specification. |
Working Draft | Initial definition. |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
text-underline-offset | Chrome No support No | Edge No support No | Firefox
Full support
70
| IE No support No | Opera No support No | Safari Full support 12.1 | WebView Android No support No | Chrome Android No support No | Firefox Android No support No | Opera Android No support No | Safari iOS Full support 12.2 | Samsung Internet Android No support No |
| percentage values | Chrome No support No | Edge No support No | Firefox Full support 74 | IE No support No | Opera No support No | Safari No support No | WebView Android No support No | Chrome Android No support No | Firefox Android No support No | Opera Android No support No | Safari iOS No support No | Samsung Internet Android No support No |
Legend
- Full support
- Full support
- No support
- No support
- User must explicitly enable this feature.
- User must explicitly enable this feature.
