Псевдоэлемент ::before

Internet ExplorerChromeOperaSafariFirefoxAndroidiOS
9.0+1.0+7.0+1.0+1.5+1.0+1.0+

Краткая информация

ПрименяетсяКо всем элементам
Ссылка на спецификацию http://www.w3.org/TR/css3-selectors/#gen-content

Версии CSS

CSS 1CSS 2CSS 2.1CSS 3

Описание

Псевдоэлемент ::before применяется для отображения желаемого контента до содержимого элемента, к которому он добавляется. Работает совместно со свойством content.

Для ::before характерны следующие особенности.

  1. При добавлении ::before к блочному элементу, значение свойства display может быть только: block, inline, none, marker. Все остальные значения будут трактоваться как block.
  2. При добавлении ::before к встроенному элементу, display ограничен значениями inline и none. Все остальные будут восприниматься как inline.
  3. ::before наследует стиль от элемента, к которому он добавляется.

Синтаксис

элемент::before { content: "текст" }

Значения

Нет.

Пример

HTML5CSS2.1CSS3IECrOpSaFx

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8">
  <title>before</title>
  <style>
   li::before {
     content: "¶ "; /* Добавляем желаемый символ перед элементом списка */ 
   }
   li {
     list-style: none; /* Убираем исходные маркеры */ 
   }
  </style>
 </head>
 <body>
   <ul>
     <li>Альфа</li>
     <li>Бета</li>
     <li>Гамма</li>
   </ul>
 </body>
</html>

В данном примере вместо стандартных маркеров списка с помощью псевдоэлемента ::before выводится символ ¶. Результат примера продемонстрирован на рис. 1.

Использование псевдоэлемента ::before в списках

Рис. 1. Использование псевдоэлемента ::before в списках

Браузеры

Браузер Internet Explorer до версии 9.0 работает только с нотацией :before, описанной в спецификации CSS 2.1.

Часті запитання

  • Q: Як використовувати псевдоелемент ::before в CSS?

    A: Псевдоелемент ::before використовується для вставки контенту перед вмістом вказаного елементу. Для його використання потрібно вказати властивість content та задати необхідні стилі.

  • Q: Де можна використовувати псевдоелемент ::before?

    A: Псевдоелемент ::before можна використовувати для додавання декоративних елементів до вмісту елементів на сторінці, наприклад, для створення піктограм або додавання додаткового оформлення.

  • Q: Чи можна використовувати псевдоелемент ::before для вставки тексту?

    A: Так, псевдоелемент ::before можна використовувати для вставки тексту через властивість content. Однак слід пам'ятати, що цей текст не індексується пошуковими системами.

  • Q: Як задати розміри та стилі псевдоелемента ::before?

    A: Для задання розмірів та стилів псевдоелемента ::before використовуються звичайні CSS властивості, такі як width, height, background, border тощо.

  • Q: Чи можна використовувати псевдоелемент ::before для всіх HTML елементів?

    A: Псевдоелемент ::before можна використовувати для більшості HTML елементів, але є винятки, наприклад, не всі елементи підтримують псевдоелементи.