Обращение к объекту в CSS: типы объектов и их классы

Существует множество способов вызвать один и тот же объект в CSS. Например у нас есть такая HTML структура:

 
  
Hello World!
Пришло время ебануть кофейка...


Предположим, что нам надо выделить слово "кофейка" красным цветом. Мы можем сделать это несколькими способами (см. ниже)
span {color: red}

.myclass span {color: red}

#block span {color: red}

#block.myclass span {color: red}


Все эти способы являются рабочими, но все они некорректные с точки зрении семантики кода. Хотя, при некоторых обстоятельствах, последние два способа не лишены смысла, но...

В чем же ошибка? Ошибка в том, что мы меняем цвет всему типу объектов span. Если мы заверстаем страницу таким образом, то все теги span будут содержать красный текст.

На практике программист не знаем наперед сколько раз и в какой последовательности будет использоваться тот или иной тег в конкретном блоке. Изначально я предложил верстку с ошибкой. Нельзя просто ставить тег span! Нужно было обязательно указать для него класс, если мы хотим присвоить объекту стиль.

ВЫВОДЫ: Нельзя блиать указывать стили для типа объектов span, div, p и т.п. Стили можно указывать только для класса объектов. Например: <span class="color1">текст</span>.

Указывать CSS стиль для типа объектов можно только в исключительных случаях. Все эти случаи должны находиться в начале файла стилей.

Статья написана в рамках проекта "Как научиться HTML верстке?"
Мои PET-проекты
Матч Шредингера. Про футбол без спойлеров. Сервис помогает выбрать интересный матч для просмотра в записе. Перейти »
MafiozZz. Сервис для тех, кто любит играть в мафию. Сервис дает клубам возможность завести клубный сайт, предоставляет удобный интерфейс для ведения подобной статистики, расписания игр, выдавать игрокам награды, проводь адресную SMS рассылку (и прочие плюшки). Перейти »