
- •1. Требуется задать цвет заголовка зелёным. Какое стилевое свойство подойдёт для этой цели?
- •2. Что такое стиль?
- •3. Как расшифровывается аббревиатура css?
- •Единое стилевое оформление множества документов
- •Централизованное хранение
- •Способы добавления стилей на страницу
- •Связанные стили
- •Глобальные стили
- •Внутренние стили
- •Импорт css
- •Вопросы для проверки
- •Вопросы для проверки
- •1. Паша решил для своего сайта сделать версию для печати. Какую строку ему следует использовать в коде?
- •2. В какой момент подключается стиль для принтера?
- •3. В какой строке кода содержится ошибка?
- •Правила применения стилей
- •Форма записи
- •Имеет приоритет значение, указанное в коде ниже
- •Значения
- •Комментарии
- •Вопросы для проверки
- •Значения стилевых свойств
- •Проценты
- •Размеры
- •Относительные единицы
- •Абсолютные единицы
- •По шестнадцатеричному значению
- •По названию
- •С помощью rgb
- •Ключевые слова
- •Вопросы для проверки
- •Селекторы тегов
- •Вопросы для проверки
- •Практикум
- •Одновременное использование разных классов
- •Вопросы для проверки
- •1. Какое имя класса написано правильно?
- •Практикум
- •Идентификаторы
- •Вопросы для проверки
- •1. В каких ситуациях имена идентификаторов и классов можно называть одинаково?
- •2. Какое имя идентификатора написано неправильно?
- •3. Какая ошибка содержится в следующем коде?
- •Контекстные селекторы
- •Вопросы для проверки
- •1. Какой цвет будет у текста списка в следующем коде?
- •2. В коде выше какого цвета будут маркеры перед текстом?
- •Соседние селекторы
- •Вопросы для проверки
- •1. Какие теги в данном коде являются соседними?
- •Дочерние селекторы
- •Вопросы для проверки
- •1. Какой цвет будет у жирного курсивного текста в коде
- •Селекторы атрибутов
- •Простой селектор атрибута
- •Атрибут со значением
- •Значение атрибута начинается с определённого текста
- •Значение атрибута оканчивается определённым текстом
- •Значение атрибута содержит указанный текст
- •Одно из нескольких значений атрибута
- •Дефис в значении атрибута
- •Вопросы для проверки
- •1. Необходимо задать цвет фона у текстового поля. Какой стиль для этой цели подойдет?
- •2. Какой стиль необходимо использовать, чтобы изменить цвет текста только у второго абзаца?
- •3. К какому элементу будет применяться следующий стиль?
- •Универсальный селектор
- •Вопросы для проверки
- •1. Какой стиль установит красный цвет текста в абзаце?
- •2. Что означает следующая запись в стилях?
- •3. К какому слову применяется стиль селектора div * em * в следующем фрагменте кода?
- •Псевдоклассы
- •Псевдоклассы, определяющие состояние элементов
- •Псевдоклассы, имеющие отношение к дереву документа
- •Псевдоклассы, задающие язык текста
- •Вопросы для проверки
- •1. Олег сделал ссылки, которые меняют цвет фона при наведении на них курсора мыши. Для этого он использовал следующий стиль.
- •2. Требуется выделить фоновым цветом первую строку таблицы. Какой псевдокласс для этой цели подойдёт?
- •3. К каким элементам добавляет стиль следующая конструкция — a:link:visited:hover ?
- •Псевдоэлементы
- •Вопросы для проверки
- •1. Какой псевдоэлемент позволяет добавить текст в начало предложения?
- •2. Что делает следующий стиль?
- •3. Какой селектор написан с ошибкой?
- •Вопросы для проверки
- •1. Какой цвет фона будет у элемента с классом button при включении приведённого стиля?
- •Наследование
- •Практикум
- •Каскадирование
- •Специфичность
- •1. Какая специфичность будет у селектора table.Forum tr:hover p?
- •2. Какая специфичность будет у селектора #catalog .Col3 .Height div?
- •Проверить uri
- •Проверить загруженный файл
- •Проверить набранный текст
- •Выбор версии css
- •Идентификаторы и классы
- •Идентификаторы
- •Применяйте группирование
- •Используйте универсальные свойства
- •Форматирование кода
- •Минимизация кода
- •Библиотека minify
Псевдоклассы, имеющие отношение к дереву документа
К этой группе относятся псевдоклассы, которые определяют положение элемента в дереве документа и применяют к нему стиль в зависимости от его статуса.
:first-child
Применяется к первому дочернему элементу селектора, который расположен в дереве элементов документа. Чтобы стало понятно, о чем речь, разберём небольшой код (пример 15.4).
Пример 15.4. Использование псевдокласса :first-child
HTML5CSS 2.1IECrOpSaFx
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Псевдоклассы</title>
<style type="text/css">
B:first-child {
color: red; /* Красный цвет текста */
}
</style>
</head>
<body>
<p><b>Lorem ipsum</b> dolor sit amet, <b>consectetuer</b>
adipiscing <b>elit</b>, sed diem nonummy nibh euismod tincidunt
ut lacreet dolore magna aliguam erat volutpat.</p>
<p><b>Ut wisis enim</b> ad minim veniam, <b>quis nostrud</b>
exerci tution ullamcorper suscipit lobortis nisl ut aliquip ex ea <b>commodo
consequat</b>.</p>
</body>
</html>
Результат примера показан ниже (рис. 15.4).
Рис. 15.4. Использование псевдокласса :first-child
В данном примере псевдокласс :first-child добавляется к селектору B и устанавливает для него красный цвет текста. Хотя контейнер <b>встречается в первом абзаце три раза, красным цветом будет выделено лишь первое упоминание, т. е. текст «Lorem ipsum». В остальных случаях содержимое контейнера <b> отображается чёрным цветом. Со следующим абзацем всё начинается снова, поскольку родительский элемент поменялся. Поэтому фраза «Ut wisis enim» также будет выделена красным цветом.
Браузер Internet Explorer поддерживает псевдокласс :first-child начиная с версии 7.0.
Псевдокласс :first-child удобнее всего использовать в тех случаях, когда требуется задать разный стиль для первого и остальных однотипных элементов. Например, в некоторых случаях красную строку для первого абзаца текста не устанавливают, а для остальных абзацев добавляют отступ первой строки. С этой целью применяют свойство text-indent с нужным значением отступа. Но чтобы изменить стиль первого абзаца и убрать для него отступ потребуется воспользоваться псевдоклассом :first-child (пример 15.5).
Пример 15.5. Отступы для абзаца
HTML5CSS 2.1IECrOpSaFx
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Псевдоклассы</title>
<style>
P {
text-indent: 1em; /* Отступ первой строки */
}
P:first-child {
text-indent: 0; /* Для первого абзаца отступ убираем */
}
</style>
</head>
<body>
<p>Историю эту уже начали забывать, хотя находились горожане, которые
время от времени рассказывали ее вновь прибывшим в город посетителям.</p>
<p>Легенда обрастала подробностями и уже совсем не напоминала произошедшее
в действительности событие. И, тем не менее, ни один человек не решался
заикнуться о ней с наступлением темноты.</p>
<p>Но однажды в город вновь вошел незнакомец. Он хромал на левую ногу.</p>
</body>
</html>
Результат примера показан ниже (рис. 15.5).
Рис. 15.5. Изменение стиля первого абзаца
В данном примере первый абзац текста не содержит отступа первой строки, а для остальных он установлен.