Codebra
25 января 2026 в 18:19

Урок 10. Селекторы атрибутов (по частичному значению) в CSS

Выбираем селекторы атрибутов по частичному значению. Еще таблица дополнительных селекторов атрибутов по подстроке. Практика и теория по CSS на Codebra.
📝

Внимание! На этой странице вы найдете материал урока из архивного курса по CSS. Курс был написан в 2015 и по-прежнему актуален для начинающих веб-разработчиков.

Теоретический материал сохранен в исходном виде, а практические задания с автоматической проверкой вынесены в отдельные роадмапы.

Полный список уроков доступен по тегу Архивный курс по CSS и на странице первого урока.

📋 Задание
  • При помощи селекторов атрибутов по частичному значению сделайте цвет текста всех div красным, кроме последнего (пятого). Например, div[title $= "12"]

Например, в атрибуте class может быть несколько классов разделенных пробелом. Рассмотрим пример 1.

<span class = "red bold">Жирный, красный текст</span>

Например, нам нужно выбрать элементы, атрибут class которых содержит слово red. Это реализовано в примере два.

span[class ~= "red"] {
    color: red;
}
💡 Примечание

Между span и [ нет пробела! Обратите на это внимание!

Вы, наверно, подумали, что проще написать как в третьем примере.

span.red {
    color: red;
}

Да, в третьем примере проще и правильнее. Поэтому пример с классами не подходит, рассмотрим следующий пример. Пример четвертый.

<span title = "Крутой физик">Альберт Эйнштейн</span>
<span title = "Еще один физик">Никола Тесла</span>

Выделим жирным начертанием физиков. Будем искать слово «физик» в атрибуте title. Обратите внимание на то, что регистр имеет значение.

span[title ~= "физик"] {
    font-weight: bold;
}

Для проверки можете написать как в шестом или седьмом примере. В таком случае будет выделен только Тесла.

span[title ~= "Еще"] {
    font-weight: bold;
}
span[title ~= "один"] {
    font-weight: bold;
}

Другие селекторы атрибутов по частичному значению

Ниже представлена таблица дополнительных селекторов атрибутов по подстроке. Где atr - любой атрибут, val - любое значение.

Селектор Значение
[atr ^= "val"] Атрибут atr, значение которого начинается на val
[atr $= "val"] Атрибут atr, значение которого заканчивается на val
[atr *= "val"] Атрибут atr, значение которого содержит val

Рассмотрим на основе восьмого примера:

<div class = "value">привет</div>
div[class ^= "val"] {
    font-weight: bold;
}
div[class $= "val"] {
    font-weight: bold;
}
div[class *= "val"] {
    font-weight: bold;
}

В девятом примере подстрока val будет найдена. В десятом примере подстрока val не будет найдена. В 11 примере подстрока val будет найдена. Рассмотрим 12 пример.

<div class = "max_val">привет</div>

Теперь div[class $= "val"] сработает в 12 примере.

📝

Переходите к следующему уроку курса, а так же не забудьте посмотреть новый материал на Codebra по тегу CSS.