Дмитрий Нечаев
Псевдоэлемент first-line в CSS. Полное руководство с примерами
CSS предоставляет множество возможностей для стилизации элементов веб-страницы. Одной из таких возможностей является стилизация первой строки текста с помощью псевдоэлемента ::first-line. В этой статье мы подробно рассмотрим, как использовать этот псевдоэлемент, какие свойства можно применять и приведем примеры использования.
Что такое ::first-line?
Псевдоэлемент ::first-line позволяет применить стили только к первой строке блока текста. Это может быть полезно для создания визуально привлекательных текстовых блоков, улучшения читаемости или выделения важной информации.
Основные свойства, применимые к ::first-line
Не все CSS-свойства могут быть применены к псевдоэлементу ::first-line. Список допустимых свойств ограничен, поскольку стилизация строки текста должна учитывать изменение длины строки при изменении размеров окна браузера. К допустимым свойствам относятся:
- font— семейство шрифтов, размер шрифта, вес шрифта и стиль.
- color— цвет текста.
- background— фон текста (цвет, изображение и т.д.).
- word-spacing— расстояние между словами.
- letter-spacing— расстояние между буквами.
- text-decoration— украшение текста (например, подчеркивание).
- text-transform— преобразование текста (например, все буквы заглавные).
- line-height— высота строки.
Стилизация первой строки текста с помощью псевдоэлемента ::first-line может быть полезным приемом для улучшения типографики и визуального оформления веб-страницы. Но для того, чтобы этот прием работал эффективно и не нарушал общий дизайн сайта, необходимо хорошо понимать, как работают текстовые элементы в HTML, как применять различные свойства CSS и как учитывать особенности отображения в разных браузерах. Если вы хотите детальнее изучить CSS и научиться создавать сложные и красивые веб-страницы, — приходите на наш большой курс HTML и CSS. На курсе 212 уроков и 19 упражнений, AI-тренажеры для безлимитной практики с кодом и задачами 24/7, решение задач с живым ревью наставника, еженедельные встречи с менторами.
Примеры использования
Рассмотрим несколько примеров, демонстрирующих использование псевдоэлемента ::first-line.
Пример 1: Изменение цвета и размера шрифта первой строки
<!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Пример ::first-line</title>
    <style>
        p::first-line {
            color: blue; /* Изменяем цвет текста первой строки */
            font-size: 1.5em; /* Увеличиваем размер шрифта первой строки */
        }
    </style>
</head>
<body>
    <p>
        Первая строка этого абзаца будет синего цвета и увеличенного размера. Остальной текст останется без изменений.
    </p>
</body>
</html>Пример 2: Применение фона и преобразования текста первой строки
<!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Пример ::first-line</title>
    <style>
        p::first-line {
            background-color: yellow; /* Задаем фон первой строки */
            text-transform: uppercase; /* Преобразуем текст первой строки в верхний регистр */
        }
    </style>
</head>
<body>
    <p>
        Первая строка этого абзаца будет иметь желтый фон и все буквы будут заглавными. Остальной текст останется без изменений.
    </p>
</body>
</html>Ограничения псевдоэлемента ::first-line
Важно помнить, что ::first-line работает только с блочными элементами, такими как <p>, <div>, <h1> - <h6>. Он не будет работать с инлайновыми элементами, такими как <span>. Кроме того, изменения, внесенные в первую строку, могут изменять её длину, что может повлиять на восприятие текста.
Пример 3: Некорректное использование ::first-line
<!DOCTYPE html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Пример ::first-line</title>
    <style>
        span::first-line {
            color: red; /* Это свойство не сработает, так как span является инлайновым элементом */
        }
    </style>
</head>
<body>
    <span>
        Этот текст не будет стилизован с помощью ::first-line, так как span является инлайновым элементом.
    </span>
</body>
</html>Заключение
Псевдоэлемент ::first-line предоставляет удобный способ стилизации первой строки текста в блочных элементах. Используя его, можно сделать текст более привлекательным и читабельным. Однако важно учитывать ограничения и применять только допустимые свойства для достижения желаемого эффекта.
Стилизация первой строки текста - это интересный прием для визуального оформления веб-страниц, но для создания современных и интерактивных веб-сайтов необходимо владеть гораздо большим набором навыков и технологий. На нашем курсе HTML и CSS вы получите все необходимые знания и практические навыки для успешной работы. В первых 3 модулях уже доступно бесплатное содержание — начните погружаться в мир HTML и CSS прямо сегодня.
Постройте личный план изучения Css до уровня Middle — бесплатно!
Css — часть карты развития Frontend
- 100+ шагов развития 
- 30 бесплатных лекций 
- 300 бонусных рублей на счет 
Бесплатные лекции
Все гайды по Css
Лучшие курсы по теме

HTML и CSS
Антон Ларичев
TypeScript с нуля
Антон Ларичев