#14. Атрибуты id и class — подготовка к CSS
Primary tabs
Forums:
Мы уже давно пользуемся атрибутами: href задаёт адрес ссылки, src — путь к картинке, alt — её описание.
Атрибуты id и class особенные: они ничего не меняют на странице сами по себе, а дают элементам имена — по этим именам их потом находят CSS и JavaScript. Отсюда и название урока: это мост из HTML в CSS.
id — уникальное имя
С id вы уже встречались в уроке #7: якорь «прикреплялся» к заголовку именно через id:
<h2 id="part2">Раздел 2</h2>
Главное правило: id уникален — конкретное имя может носить только один элемент страницы, как номер паспорта у человека. Имя пишут латиницей без пробелов (цифры и дефисы можно), а начинаться оно должно с буквы.
class — имя для группы
class объединяет элементы в группу: одно имя можно дать скольким угодно элементам, а одному элементу — сразу несколько классов через пробел:
<p class="intro">Вводный абзац статьи.</p> <p>Обычный абзац.</p> <p class="intro note">Ещё один вводный абзац, сразу с двумя классами.</p>
Имена классов вы придумываете сами — это просто ярлыки: menu, post, price.
id или class?
| Сколько раз на странице | Когда использовать | |
|---|---|---|
id |
одно имя — один элемент | якоря, уникальные блоки вроде шапки |
class |
сколько угодно | повторяющиеся элементы: статьи, пункты меню |
Правило простое: уникальное — id, повторяющееся — class. На практике классы используют чаще.
Как это использует CSS
Сейчас id и class на вид страницы не влияют. Но в CSS к ним обращаются так: решётка — для id, точка — для класса:
<style>
#header {
background: yellow;
}
.intro {
color: green;
}
</style>
Блок <style> вставляется в head — и все абзацы с классом intro позеленеют. Подробно это — тема отдельной части курса; здесь важно одно: имена — это способ найти элемент и что-то с ним сделать.
Практика
Возьмите страницу из урока #12: дайте шапке id="site-header", статьям в main — класс post, а важным абзацам — класс intro. Откройте исходный код (Ctrl+U) и убедитесь поиском, что каждое имя id встречается на странице ровно один раз.
- Log in to post comments
- 95 reads