W3cubDocs

/CSS

::first-line (:first-line)

The ::first-line CSS pseudo-element applies styles to the first line of a block-level element.

Try it

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.

Allowable properties

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–2022 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