The ::first-line
CSS pseudo-element applies styles to the first line of a block-level element.
The ::first-line
CSS pseudo-element applies styles to the first line of a block-level element.
The effects of ::first-line
are limited by the length and content of the first line of text in the element. The length of the first line depends on many factors, including the width of the element, the width of the document, and the font size of the text. ::first-line
has no effect when the first child of the element, which would be the first part of the first line, is an inline block-level element, such as an inline table.
Note: Selectors Level 3 introduced the double-colon notation (::
) to distinguish pseudo-classes from pseudo-elements, which are single-colon :
. Browsers accept both ::first-line
and :first-line
, which was introduced in CSS2.
For the purposes of CSS background
, the ::first-line
pseudo-element is like an inline-level element meaning that in a left-justified first line, the background may not extend all the way to the right margin.
Only a small subset of CSS properties can be used with the ::first-line
pseudo-element:
font
, font-kerning
, font-style
, font-variant
, font-variant-numeric
, font-variant-position
, font-variant-east-asian
, font-variant-caps
, font-variant-alternates
, font-variant-ligatures
, font-synthesis
, font-feature-settings
, font-language-override
, font-weight
, font-size
, font-size-adjust
, font-stretch
, and font-family
background-color
, background-clip
, background-image
, background-origin
, background-position
, background-repeat
, background-size
, background-attachment
, and background-blend-mode
color
propertyword-spacing
, letter-spacing
, text-decoration
, text-transform
, and line-height
text-shadow
, text-decoration
, text-decoration-color
, text-decoration-line
, text-decoration-style
, and vertical-align
.::first-line { /* ... */ }
<p> Styles will only be applied to the first line of this paragraph. After that, all text will be styled like normal. See what I mean? </p> <span> The first line of this text will not receive special styling because it is not a block-level element. </span>
::first-line { color: blue; text-transform: uppercase; /* WARNING: DO NOT USE THESE */ /* Many properties are invalid in ::first-line pseudo-elements */ margin-left: 20px; text-indent: 20px; }
Specification |
---|
CSS Pseudo-Elements Module Level 4 # first-line-pseudo |
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
::first-line |
1Before Chrome 62, thetext-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669.1Before Chrome 62, thetext-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669. |
1212 | 11 | 95.5 |
7From Opera 15 to Opera 49 (exclusive), thetext-transform property does not work on ::first-line or :first-line pseudo-elements. See Chromium bug 129669.3.5From Opera 15 to Opera 49 (exclusive), thetext-transform property does not work on ::first-line or :first-line pseudo-elements. See Chromium bug 129669. |
1Thetext-transform property does not work for ::first-line or :first-line pseudo-elements. See WebKit bug 3409.1Thetext-transform property does not work for ::first-line or :first-line pseudo-elements. See WebKit bug 3409. |
≤37Before WebView 62, thetext-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669.≤37Before WebView 62, thetext-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669. |
18Before Chrome 62, thetext-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669.18Before Chrome 62, thetext-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669. |
44 |
10.1From Opera 15 to Opera 49 (exclusive), thetext-transform property does not work on ::first-line or :first-line pseudo-elements. See Chromium bug 129669.10.1From Opera 15 to Opera 49 (exclusive), thetext-transform property does not work on ::first-line or :first-line pseudo-elements. See Chromium bug 129669. |
1Thetext-transform property does not work for ::first-line or :first-line pseudo-elements. See WebKit bug 3409.1Thetext-transform property does not work for ::first-line or :first-line pseudo-elements. See WebKit bug 3409. |
1.0Before Samsung Internet 8.0, thetext-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669.1.0Before Samsung Internet 8.0, thetext-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669. |
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/::first-line