CSS::first-line 疑似要素は、ブロックレベル要素の最初の行にスタイルを適用します。なお、最初の行の長さは要素の幅、文書の幅、文字列のフォントの大きさなど、様々な要因に左右されます。

/* <p> の最初の行を選択 */
p::first-line {
  color: red;
}

CSS3 では疑似クラス疑似要素を見分けやすくするために、 ::first-line の表記法(二重コロン付き)が導入されました。ブラウザーでは CSS2 で導入された :first-line も使用できます。

利用可能なプロパティ

::first-line 擬似要素では、一部の CSS プロパティのみが利用できます。

構文

/* CSS3 syntax */
::first-line

/* CSS2 syntax */
:first-line

HTML

<p>スタイルはこの段落の最初の行にのみ適用されます。
その後のすべての文字列は普通のスタイルになります。分かりますか?</p>

<span>ブロックレベル要素ではないので、この文字列の最初の行は、
特殊なスタイルになりません。</span>

CSS

::first-line {
  color: blue;
  text-transform: uppercase;


  /* 警告: これらを使用しないでください */
  /* ::first-line 疑似要素では多くのプロパティが無効になります */
  margin-left: 20px;
  text-indent: 20px;
}

結果

仕様書

仕様書 策定状況 コメント
CSS Pseudo-Elements Level 4
::first-line の定義
草案 ::first-letter を利用できる場所をもっと厳密に定義。
利用できるプロパティを組版、文字装飾、インライン配置、 opacitybox-shadow に一般化。
::first-letter の継承を定義。
CSS Text Decoration Module Level 3
text-shadow with ::first-line の定義
勧告候補 ::first-lettertext-shadow が使用できるようになった。
Selectors Level 3
::first-line の定義
勧告 疑似要素用の二重コロン構文の導入。
CSS Level 2 (Revision 1)
::first-line の定義
勧告 変更なし。
CSS Level 1
::first-line の定義
勧告 初回定義、単一コロン構文を使用。

ブラウザー実装状況

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応

11

11 2

あり

あり2

1

12

9

5.52

73

3.52 3

14

12 4

機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応 あり ?

あり

あり2

4

42

? ? ?

1. Before Chrome 62, the text-transform property does not work on ::first-line pseudo-elements. See Chromium bug 129669.

2. Supported as :first-line.

3. 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.

4. The text-transform property does not work for ::first-line or :first-line pseudo-elements. See WebKit bug 3409.

関連項目

ドキュメントのタグと貢献者

このページの貢献者: mfuji09, ethertank, sosleepy
最終更新者: mfuji09,