1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
|
---
title: '::first-line (:first-line)'
slug: 'Web/CSS/::first-line'
tags:
- CSS
- Layout
- Reference
- Псевдоэлементы
translation_of: 'Web/CSS/::first-line'
---
<div>{{CSSRef}}</div>
<p><span class="seoSummary"><a href="/ru/docs/Web/CSS">CSS</a> <a href="/ru/docs/Web/CSS/Pseudo-elements">псевдоэлемент</a> <strong><code>::first-line</code></strong> применяет стили к первой строке <a href="/ru/docs/Web/CSS/Visual_formatting_model#Block-level_elements_and_block_boxes">блочного элемента</a>.</span> Обратите внимание, что длина первой строки зависит от многих факторов, включая ширину элемента, ширину документа и размер шрифта текста.</p>
<pre class="brush: css no-line-numbers">/* Стили для первой строки элемента <p> */
p::first-line {
color: red;
}</pre>
<div class="note">
<p>В CSS3 появилась запись <code>::first-line</code> (с двумя двоеточиями) для различения <a href="/ru/docs/Web/CSS/Pseudo-classes">псевдоклассов</a> и <a href="/ru/docs/Web/CSS/Pseudo-elements">псевдоэлементов</a>. Браузеры также поддерживают запись <code>:first-line</code>, введённую в CSS2.</p>
</div>
<h2 id="Разрешённые_свойства">Разрешённые свойства</h2>
<p>Только небольшое подмножество CSS-свойств может быть использовано с псевдоэлементом <code>::first-line</code>:</p>
<ul>
<li>Все свойства, связанные с шрифтами: {{Cssxref("font")}}, {{cssxref("font-kerning")}}, {{Cssxref("font-style")}}, {{Cssxref("font-variant")}}, {{cssxref("font-variant-numeric")}}, {{cssxref("font-variant-position")}}, {{cssxref("font-variant-east-asian")}}, {{cssxref("font-variant-caps")}}, {{cssxref("font-variant-alternates")}}, {{cssxref("font-variant-ligatures")}}, {{cssxref("font-synthesis")}}, {{cssxref("font-feature-settings")}}, {{cssxref("font-language-override")}}, {{Cssxref("font-weight")}}, {{Cssxref("font-size")}}, {{cssxref("font-size-adjust")}}, {{cssxref("font-stretch")}} и {{Cssxref("font-family")}}</li>
<li>Все свойства, связанные с фоном: {{Cssxref("background-color")}}, {{cssxref("background-clip")}}, {{Cssxref("background-image")}}, {{cssxref("background-origin")}}, {{Cssxref("background-position")}}, {{Cssxref("background-repeat")}}, {{cssxref("background-size")}}, {{Cssxref("background-attachment")}} и {{cssxref("background-blend-mode")}}</li>
<li>Свойство {{cssxref("color")}}</li>
<li>{{cssxref("word-spacing")}}, {{cssxref("letter-spacing")}}, {{cssxref("text-decoration")}}, {{cssxref("text-transform")}} и {{cssxref("line-height")}}</li>
<li>{{cssxref("text-shadow")}}, {{cssxref("text-decoration")}}, {{cssxref("text-decoration-color")}}, {{cssxref("text-decoration-line")}}, {{cssxref("text-decoration-style")}} и {{cssxref("vertical-align")}}.</li>
</ul>
<h2 id="Синтаксис">Синтаксис</h2>
{{csssyntax}}
<h2 id="Пример">Пример</h2>
<h3 id="HTML">HTML</h3>
<pre class="brush: html"><p>Стили будут применены только к первой строке этого параграфа.
После этого, весь текст будет отображаться как обычно. Увидели, что я имею в виду?</p>
<span>Первая строка этого элемента не будет стилизована специальным образом
потому что это не блочный элемент.</span></pre>
<h3 id="CSS">CSS</h3>
<pre class="brush: css">::first-line {
color: blue;
text-transform: uppercase;
/* ПРЕДУПРЕЖДЕНИЕ: НЕ ИСПОЛЬЗУЙТЕ ЭТО */
/* Многие свойства запрещены в псевдоэлементах ::first-line */
margin-left: 20px;
text-indent: 20px;
}</pre>
<h3 id="Результат">Результат</h3>
<p>{{EmbedLiveSample('Пример', 350, 160)}}</p>
<h2 id="Спецификации">Спецификации</h2>
<table class="standard-table">
<thead>
<tr>
<th scope="col">Спецификация</th>
<th scope="col">Статус</th>
<th scope="col">Комментарий</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{SpecName('CSS4 Pseudo-Elements', '#first-line-pseudo', '::first-line')}}</td>
<td>{{Spec2('CSS4 Pseudo-Elements')}}</td>
<td>Более точно определяет, где <code>::first-letter</code> может использоваться.<br>
Обобщает разрешённые свойства до типографических, оформления текста, инлайн свойств разметки и {{cssxref("opacity")}}.<br>
Определяет наследование <code>::first-letter</code>.</td>
</tr>
<tr>
<td>{{SpecName('CSS3 Text Decoration', '#text-shadow', 'text-shadow with ::first-line')}}</td>
<td>{{Spec2('CSS3 Text Decoration')}}</td>
<td>Разрешает использовать {{cssxref("text-shadow")}} с <code>::first-letter</code>.</td>
</tr>
<tr>
<td>{{SpecName('CSS3 Selectors', '#first-line', '::first-line')}}</td>
<td>{{Spec2('CSS3 Selectors')}}</td>
<td>Введение синтаксиса с двумя двоеточиями.</td>
</tr>
<tr>
<td>{{SpecName('CSS2.1', 'selector.html#first-line-pseudo', '::first-line')}}</td>
<td>{{Spec2('CSS2.1')}}</td>
<td>Нет измененный.</td>
</tr>
<tr>
<td>{{SpecName('CSS1', '#the-first-line-pseudo-element', '::first-line')}}</td>
<td>{{Spec2('CSS1')}}</td>
<td>Изначальное определение, используя синтаксис с одним двоеточием.</td>
</tr>
</tbody>
</table>
<h2 id="Поддержка_браузерами">Поддержка браузерами</h2>
<div>
<p>{{Compat("css.selectors.first-line")}}</p>
</div>
<h2 id="См._также">См. также</h2>
<ul>
<li>{{cssxref("::first-letter")}}</li>
</ul>
|