В этом уроке мы узнаем о псевдоэлементах CSS!
Псевдоэлемент используется для стилизации определенных частей элемента. Например, мы могли бы использовать его для стилизации первой буквы (::first-letter
) или строки (::first-line
) элемента. Или мы могли бы использовать его для добавления содержимого до (::before
) или после (::after
) содержимого элемента.
Например:
p::first-letter {
color: red;
text-transform: uppercase;
}
Здесь первая буква каждого <p>
выбирается псевдоэлементом ::first-letter
. Цвет изменится на красный, а текст будет переведен в верхний регистр.
Вы узнаете, когда увидите псевдоэлементы, поскольку они начинаются с двойного двоеточия ::
. Хотя можно использовать и одиночное двоеточие, по соглашению используется двойное значение, чтобы отличать их от псевдоклассов.
🤓 Хотите быть в курсе новостей веб-разработчиков?
🚀 Хотите, чтобы последние новости доставлялись прямо на ваш почтовый ящик?
🎉 Присоединяйтесь к растущему сообществу дизайнеров и разработчиков!
Подпишитесь на мою рассылку здесь → https://easeout.eo.page
Список псевдоэлементов
::first-letter
используется для стилизации первой буквы блока текста. ::first-line
используется для стилизации первой строки блока текста. ::before
позволяет добавлять содержимое перед элементом. ::after
позволяет добавлять содержимое после элемента. ::selection
нацелен на текст, выбранный пользователем.
Есть и другие, но они считаются экспериментальными. В этом уроке мы сосредоточимся на этих основных псевдоэлементах.
::первое письмо
Как мы видели ранее, псевдоэлемент ::first-letter
используется для добавления стилей только к первой букве текста.
Например, давайте изменим первую букву текста во всех <p>
элементах на более крупный размер шрифта:
p::first-letter { font-size: 150%; }
Следует отметить, что ::first-letter
может применяться только к элементам уровня блока. Это любой элемент, который начинается с новой строки и занимает всю ширину страницы, например от <div>
, от <h1>
до <h6>
, <p>
и т. Д. Он не может применяться к встроенным элементам, таким как <span>
или <code>
.
Изящный трюк - объединить селекторы псевдоэлементов с классами:
p.summary::first-letter { color: red; }
Итак, здесь мы можем стилизовать первую букву каждого абзаца с помощью класса summary.
::первая строка
Псевдоэлемент ::first-line
используется для стилизации первой строки блока текста.
Так, например, чтобы выделить первую строку всех <p>
элементов более жирным шрифтом, можно использовать следующее:
p::first-line {
font-weight: 600;
}
Обратите внимание, что только часть доступных свойств CSS может использоваться для стилизации ::first-line.
Обычно только свойства, связанные со шрифтом, текстом и фоном.
::до и после
Это, вероятно, наиболее часто используемые псевдоэлементы. С ::before
и ::after
мы можем вставлять контент на страницу без необходимости его размещения в нашем HTML. Конечного результата на самом деле нет в DOM, хотя он отображается на странице, как если бы он был.
Для иллюстрации см. Следующий CSS:
div::before { content: "before"; } div::after { content: "after"; }
Примечание. свойство content
является обязательным, поскольку оно определяет добавляемый контент!
Это переводится в следующий HTML:
<div> before <!-- Everything else in our div --> after </div>
::до
Таким образом, псевдоэлемент ::before
можно использовать для вставки некоторого содержимого перед содержимым элемента.
Типичным вариантом использования может быть добавление значка перед содержимым каждого <h1>
элемента:
h1::before { content: url(icon.png); }
С помощью свойства content
вы можете вставлять любой контент:
p::before { content: "Check this out: "); color: green; font-weight: bold; }
.company::before { content: url("images/logo.png"); }
::после
Псевдоэлемент ::after
может использоваться для вставки некоторого содержимого после содержимого элемента.
Здесь мы вставляем значок после содержимого каждого <h1>
элемента:
h1::after { content: url(icon.png); }
Или мы могли бы добавить стрелку после любых ссылок:
a::after { content: "
→"; }
:: выбор
Псевдоэлемент ::selection
- еще одно чрезвычайно полезное свойство. Он соответствует части элемента, выбранной пользователем.
Мы можем использовать это для стилизации выделенного текста. Здесь мы установили его зеленый цвет с серым фоном:
::selection { color: green; background: grey; }
К ::selection
можно применить следующие свойства: color
, background
, cursor
и outline
.
Готовы ли вы поднять свои навыки CSS на новый уровень? Начните прямо сейчас с моей новой электронной книги: Руководство по CSS: Полное руководство по современному CSS. Будьте в курсе всего, от основных концепций, таких как Flexbox и Grid, до более сложных тем, таких как анимация, архитектура и многое другое !!
Заключение
И вот так! Мы узнали все о том, как использовать псевдоэлементы для стилизации нашего контента. Псевдоэлементы - это здорово! Они предоставляют несколько чрезвычайно полезных решений, когда нам нужно стилизовать части элементов.