::first-line (:first-line)
The ::first-line
CSS pseudo-element applies styles to the first line of a block-level element. Note that 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.
/* Selects the first line of a <p> */ p::first-line { color: red; }
Note: CSS3 introduced the ::first-line
notation (with two colons) to distinguish pseudo-classes from pseudo-elements. Browsers also accept :first-line
, introduced in CSS2.
Allowable properties
Only a small subset of CSS properties can be used with the ::first-line
pseudo-element:
- All font-related properties:
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
, andfont-family
- All background-related properties:
background-color
,background-clip
,background-image
,background-origin
,background-position
,background-repeat
,background-size
,background-attachment
, andbackground-blend-mode
- The
color
property -
word-spacing
,letter-spacing
,text-decoration
,text-transform
, andline-height
-
text-shadow
,text-decoration
,text-decoration-color
,text-decoration-line
,text-decoration-style
, andvertical-align
.
Syntax
/* CSS3 syntax */ ::first-line /* CSS2 syntax */ :first-line
Examples
HTML
<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>
CSS
::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; }
Result
Specifications
Browser compatibility
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 |
1
Before Chrome 62, the
text-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669.1
Before Chrome 62, the
text-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669. |
12
12
|
1
1
|
9
5.5
|
7
From Opera 15 to Opera 49 (exclusive), the
text-transform property does not work on ::first-line or :first-line pseudo-elements. See Chromium bug 129669.3.5
From Opera 15 to Opera 49 (exclusive), the
text-transform property does not work on ::first-line or :first-line pseudo-elements. See Chromium bug 129669. |
1
The
text-transform property does not work for ::first-line or :first-line pseudo-elements. See WebKit bug 3409.1
The
text-transform property does not work for ::first-line or :first-line pseudo-elements. See WebKit bug 3409. |
≤37
Before WebView 62, the
text-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669.≤37
Before WebView 62, the
text-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669. |
18
Before Chrome 62, the
text-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669.18
Before Chrome 62, the
text-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669. |
4
4
|
10.1
From Opera 15 to Opera 49 (exclusive), the
text-transform property does not work on ::first-line or :first-line pseudo-elements. See Chromium bug 129669.10.1
From Opera 15 to Opera 49 (exclusive), the
text-transform property does not work on ::first-line or :first-line pseudo-elements. See Chromium bug 129669. |
1
The
text-transform property does not work for ::first-line or :first-line pseudo-elements. See WebKit bug 3409.1
The
text-transform property does not work for ::first-line or :first-line pseudo-elements. See WebKit bug 3409. |
1.0
Before Samsung Internet 8.0, the
text-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669.1.0
Before Samsung Internet 8.0, the
text-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669. |
See also
© 2005–2021 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