Тестируем CSS псевдоклассы

Этот онлайн инструмент предназначен для изучения, тестирования и экспериментов с псевдоклассами CSS, которые добавляются к селекторам и позволяют выбирать элементы в определённом состоянии или позиции.

HTML:

CSS:

JavaScript:

Псевдоклассы:

Результат:

Как использовать инструмент

Инструмент прост в использовании и состоит из нескольких основных частей:

  1. HTML-редактор: В этом разделе вы можете написать HTML-код, который будет отображаться в результате. Например, вы можете создать список, форму или любой другой элемент.
  2. CSS-редактор: Здесь вы можете добавить CSS-стили, включая псевдоклассы. Например, вы можете изменить цвет текста при наведении курсора или выделить каждый второй элемент списка.
  3. JavaScript-редактор: В этом разделе можно добавить JavaScript-код для добавления интерактивности. Например, вы можете добавить обработчик событий для кнопки.
  4. Псевдоклассы: В этом разделе вы можете выбрать псевдокласс и указать, к каким элементам он должен применяться. Например, вы можете выбрать все нечётные элементы списка или ссылки при наведении.
  5. Результат: В этом разделе отображается результат выполнения вашего кода. Вы можете сразу видеть, как изменения в HTML, CSS и JavaScript влияют на отображение страницы.

Чтобы начать работу, просто введите код в соответствующие редакторы. Результат будет отображён в разделе "Результат".

Описание псевдоклассов CSS

Приведены примеры использования различных псевдоклассов CSS.

:nth-child()

Псевдокласс :nth-child() выбирает элементы на основе их позиции среди соседних элементов.

li:nth-child(2n) {
 background-color: yellow;
}

Этот код выделит каждый второй элемент <li> желтым цветом.

:nth-last-child()

Псевдокласс :nth-last-child() выбирает элементы на основе их позиции, начиная с конца.

li:nth-last-child(2) {
 background-color: lightblue;
}

Этот код выделит второй элемент <li> с конца светло-голубым цветом.

:nth-of-type()

Псевдокласс :nth-of-type() выбирает элементы определенного типа на основе их позиции.

p:nth-of-type(3) {
 color: red;
}

Этот код сделает текст третьего элемента <p> красным.

:nth-last-of-type()

Псевдокласс :nth-last-of-type() выбирает элементы определенного типа на основе их позиции, начиная с конца.

p:nth-last-of-type(1) {
 font-weight: bold;
}

Этот код сделает текст последнего элемента <p> жирным.

:active

Псевдокласс :active применяется к элементу, когда он активирован (например, при нажатии кнопки мыши).

button:active {
 background-color: green;
}

Этот код изменит цвет фона кнопки на зеленый, когда она будет нажата.

:checked

Псевдокласс :checked применяется к элементам формы, которые выбраны (например, чекбоксы или радиокнопки).

input:checked + label {
 color: blue;
}

Этот код изменит цвет текста метки, связанной с выбранным элементом формы, на синий.

:default

Псевдокласс :default выбирает элемент формы, который является значением по умолчанию.

input:default {
 border: 2px solid green;
}

Этот код добавит зеленую рамку к элементу формы, который является значением по умолчанию.

:defined

Псевдокласс :defined выбирает элементы, которые были определены (например, пользовательские элементы).

custom-element:defined {
 display: block;
}

Этот код сделает пользовательский элемент видимым, если он был определен.

:dir()

Псевдокласс :dir() выбирает элементы на основе их направления текста (например, ltr или rtl).

p:dir(rtl) {
 text-align: right;
}

Этот код выровняет текст по правому краю для элементов с направлением текста справа налево.

:disabled

Псевдокласс :disabled выбирает отключенные элементы формы.

input:disabled {
 background-color: #eee;
}

Этот код изменит цвет фона отключенных полей ввода на светло-серый.

:empty

Псевдокласс :empty выбирает элементы, которые не содержат дочерних элементов или текста.

div:empty {
 display: none;
}

Этот код скроет все пустые элементы <div>.

:enabled

Псевдокласс :enabled выбирает включенные элементы формы.

input:enabled {
 border: 1px solid green;
}

Этот код добавит зеленую рамку к включенным полям ввода.

:first

Псевдокласс :first выбирает первую страницу при печати.

@page :first {
 margin: 2cm;
}

Этот код установит отступы для первой страницы при печати.

:first-child

Псевдокласс :first-child выбирает первый дочерний элемент.

li:first-child {
 font-weight: bold;
}

Этот код сделает текст первого элемента <li> жирным.

:first-of-type

Псевдокласс :first-of-type выбирает первый элемент определенного типа среди своих соседей.

p:first-of-type {
 color: blue;
}

Этот код сделает текст первого элемента <p> синим.

:fullscreen

Псевдокласс :fullscreen выбирает элемент, который находится в полноэкранном режиме.

div:fullscreen {
 background-color: black;
}

Этот код изменит цвет фона элемента на черный, когда он находится в полноэкранном режиме.

:focus

Псевдокласс :focus применяется к элементу, когда он получает фокус (например, при клике или переходе по Tab).

input:focus {
 border-color: blue;
}

Этот код изменит цвет рамки поля ввода на синий, когда оно получит фокус.

:hover

Псевдокласс :hover применяется к элементу, когда пользователь наводит на него курсор мыши.

button:hover {
 background-color: yellow;
}

Этот код изменит цвет фона кнопки на желтый при наведении курсора.

:indeterminate

Псевдокласс :indeterminate применяется к элементам формы, которые находятся в неопределенном состоянии (например, чекбоксы).

input:indeterminate {
 opacity: 0.5;
}

Этот код сделает полупрозрачным элемент формы в неопределенном состоянии.

:in-range

Псевдокласс :in-range применяется к элементам формы, значение которых находится в допустимом диапазоне.

input:in-range {
 border-color: green;
}

Этот код изменит цвет рамки поля ввода на зеленый, если его значение находится в допустимом диапазоне.

:invalid

Псевдокласс :invalid применяется к элементам формы, значение которых не соответствует заданным ограничениям.

input:invalid {
 border-color: red;
}

Этот код изменит цвет рамки поля ввода на красный, если его значение недопустимо.

:lang()

Псевдокласс :lang() выбирает элементы на основе их языка.

p:lang(en) {
 font-style: italic;
}

Этот код сделает текст курсивом для элементов <p> с языком "en".

:last-child

Псевдокласс :last-child выбирает последний дочерний элемент.

li:last-child {
 color: red;
}

Этот код сделает текст последнего элемента <li> красным.

:last-of-type

Псевдокласс :last-of-type выбирает последний элемент определенного типа среди своих соседей.

p:last-of-type {
 font-weight: bold;
}

Этот код сделает текст последнего элемента <p> жирным.

:left

Псевдокласс :left применяется к левым страницам при печати.

@page :left {
 margin-left: 2cm;
}

Этот код установит отступ для левых страниц при печати.

:not()

Псевдокласс :not() выбирает элементы, которые не соответствуют указанному селектору.

li:not(.special) {
 color: gray;
}

Этот код сделает текст всех элементов <li>, кроме тех, у которых есть класс .special, серым.

:only-child

Псевдокласс :only-child выбирает элементы, которые являются единственными дочерними элементами.

li:only-child {
 background-color: lightgreen;
}

Этот код выделит светло-зеленым цветом элементы <li>, которые являются единственными дочерними элементами.

:only-of-type

Псевдокласс :only-of-type выбирает элементы, которые являются единственными элементами своего типа среди соседей.

p:only-of-type {
 font-size: 20px;
}

Этот код увеличит размер шрифта для элементов <p>, которые являются единственными элементами своего типа.

:optional

Псевдокласс :optional выбирает элементы формы, которые не обязательны для заполнения.

input:optional {
 border-color: gray;
}

Этот код изменит цвет рамки необязательных полей ввода на серый.

:out-of-range

Псевдокласс :out-of-range применяется к элементам формы, значение которых выходит за допустимый диапазон.

input:out-of-range {
 border-color: red;
}

Этот код изменит цвет рамки поля ввода на красный, если его значение выходит за допустимый диапазон.

:read-only

Псевдокласс :read-only выбирает элементы формы, которые доступны только для чтения.

input:read-only {
 background-color: #f5f5f5;
}

Этот код изменит цвет фона полей ввода, доступных только для чтения, на светло-серый.

:read-write

Псевдокласс :read-write выбирает элементы формы, которые доступны для редактирования.

input:read-write {
 background-color: white;
}

Этот код изменит цвет фона редактируемых полей ввода на белый.

:required

Псевдокласс :required выбирает обязательные для заполнения элементы формы.

input:required {
 border-color: red;
}

Этот код изменит цвет рамки обязательных полей ввода на красный.

:right

Псевдокласс :right применяется к правым страницам при печати.

@page :right {
 margin-right: 2cm;
}

Этот код установит отступ для правых страниц при печати.

:scope

Псевдокласс :scope выбирает элементы, которые являются контекстом для текущего селектора.

:scope {
 background-color: yellow;
}

Этот код выделит желтым цветом элементы, которые являются контекстом для текущего селектора.

:target

Псевдокласс :target выбирает элемент, на который ссылается фрагмент URL.

:target {
 background-color: lightyellow;
}

Этот код выделит светло-желтым цветом элемент, на который ссылается фрагмент URL.

:valid

Псевдокласс :valid применяется к элементам формы, значение которых соответствует заданным ограничениям.

input:valid {
 border-color: green;
}

Этот код изменит цвет рамки поля ввода на зеленый, если его значение допустимо.

:visited

Псевдокласс :visited выбирает посещенные ссылки.

a:visited {
 color: purple;
}

Этот код сделает посещенные ссылки фиолетовыми.

Ещё инструменты

Песочница :nth
CSS в :root