Используйте каскады! Об использовании CSS с умом. - «Верстка»
«Это не Carmageddon»: гоночный боевик на выживание Carmageddon: Rogue Shift получил дату выхода, а новый трейлер разочаровал фанатов - «Новости сети»
«Это не Carmageddon»: гоночный боевик на выживание Carmageddon: Rogue Shift получил дату выхода, а новый трейлер разочаровал фанатов - «Новости сети»
Комплект DDR5 за $1500 и кофе в подарок: оригинальная акция Newegg вызвала недоумение - «Новости сети»
Комплект DDR5 за $1500 и кофе в подарок: оригинальная акция Newegg вызвала недоумение - «Новости сети»
AMD всерьёз задумалась о возрождении старых Ryzen на фоне дефицита DDR5 - «Новости сети»
AMD всерьёз задумалась о возрождении старых Ryzen на фоне дефицита DDR5 - «Новости сети»
Lenovo представила портативную консоль Legion Go 2 на базе SteamOS — альтернатива Steam Deck за $1199 - «Новости сети»
Lenovo представила портативную консоль Legion Go 2 на базе SteamOS — альтернатива Steam Deck за $1199 - «Новости сети»
Meta✴ отложила глобальный запуск AR-очков с экраном из-за «беспрецедентного спроса», но пообещала новые функции - «Новости сети»
Meta✴ отложила глобальный запуск AR-очков с экраном из-за «беспрецедентного спроса», но пообещала новые функции - «Новости сети»
Microsoft втихую прикрыла официальную возможность активации Windows без интернета - «Новости сети»
Microsoft втихую прикрыла официальную возможность активации Windows без интернета - «Новости сети»
Пользователи Steam выбрали лучшую игру 2025 года — это не Clair Obscur: Expedition 33 и даже не Kingdom Come: Deliverance 2 - «Новости сети»
Пользователи Steam выбрали лучшую игру 2025 года — это не Clair Obscur: Expedition 33 и даже не Kingdom Come: Deliverance 2 - «Новости сети»
В Норвегии уже почти все новые зарегистрированные автомобили — электрические - «Новости сети»
В Норвегии уже почти все новые зарегистрированные автомобили — электрические - «Новости сети»
Никаких проводов и отверстий: на CES 2026 покажут огромный телевизор на присосках - «Новости сети»
Никаких проводов и отверстий: на CES 2026 покажут огромный телевизор на присосках - «Новости сети»
SpaceX первой в мире запустила ракету на орбиту в 2026 году - «Новости сети»
SpaceX первой в мире запустила ракету на орбиту в 2026 году - «Новости сети»
Новости мира Интернет » Самоучитель CSS » Вёрстка » Используйте каскады! Об использовании CSS с умом. - «Верстка»


Множество раз я видел людей, которые забывали что означает первая "C" в аббревиатуре "CSS".
И как следствие, постоянное неправильное использование технологии, увеличивало их работу.



И хотя это не является абсолютно неправильным, но при таком использовании, разработчик отдаляется
от первичных целей CSS, а также добавляет себе лишней работы. Их проекты сложнее поддерживать в
течение долгого срока, поскольку список имен классов, используемых для отдельных объектов,
разрастается до неимоверных размеров, хотя мог бы быть сформирован каскадом и определиться автоматически.


Использование каскада


Проще всего будет проиллюстрировать использование на примерах:


Разметка:


<div id="footer">
[h4]Друзья[/h4]
<ul class="footer-links">
<li>Лучший друг</li>
<li>Ещё один лучший друг</li>
<li>На самом деле просто знакомый</li>
<li>Подруга знакомого</li>
</ul>
[h4]Контакты[/h4]
<ul class="footer-links">
<li>Сайт друга</li>
<li>Сайт другого друга</li>
<li>Сайт знакомого</li>
<li>Сайт подруги знакомого</li>
</ul>
</div>

CSS:


#footer{
width	: 100%;
clear	: both;
…

.footer-links{
width	: 48%;
float	: left;
…


Несколько списков в футере, указывают на различные сайты. Каждому элементу ul присвоен класс
class = "Footer-links". Это все конечно хорошо, и работает без проблем, но гораздо лучше было бы так:


Разметка:


<div id="footer">
[h4]Friends[/h4]
<ul>
<li>Friend One</li>
<li>Friend Two</li>
<li>Friend Three</li>
<li>Friend Four</li>
</ul>
[h4]Resources[/h4]
<ul>
<li>Resource One</li>
<li>Resource Two</li>
<li>Resource Three</li>
<li>Resource Four</li>
</ul>
</div>

CSS:


#footer{
width	: 100%;
clear	: both;
…

#footer ul{
width	: 48%;
float	: left;
…


То есть лучше использовать родительский элемент для задания первоначального стиля, а затем по каскаду,
доопределять стили для дочерних элементов в соответствии с ним.
Другой хороший пример:


Разметка:


<div id="header">
<h1 id="logo">CSS Tricks</h1>
</div>

CSS:


#header{
width:100%;

#logo{
…
[styles]
…


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


Разметка:


<div id="header">
[h1]CSS Tricks[/h1]
</div>

CSS:


#header{
width:100%;

#header h1{
…
[styles]
…


Хотя это несущественно, этот шаг приводит разметку в порядок и использует каскад, а это
лучше чем не использовать его вообще. Применение этой практики на уровне сайта улучшает
использование кода и делает сайт более ремонтопригодным. Конечно, к этому надо привыкнуть,
но придерживаясь этих правил, сайт будет гораздо лучше с точки зрения семантики, CSS и кодирования в целом.


Идём дальше



Другой отличный приём программирования - это определить один "главный" класс, как основу для других,
более конкретных стилей. Например:


.left{
float:left;

.image-left{
float:left;
margin:0 10px 10px 0;

.blockquote-left{
float:left;
width:280px;
margin:0 10px 0 -30px;

Эти стили могли бы быть определены так:


.left{
float:left;

thumb.left{
margin:0 10px 10px 0;

blockquote.left{
width:280px;
margin:0 10px 0 -30px;

Как видите, этот приём уменьшает количество классов (с 3 до 1), а также
количество строк кода (с 12 до 10). Конечно, это не сама цель, однако вам надо
будет запоминать меньше классов для использования в разметке, и в реальных
задачах разница будет заметна.


Заключение



Начав использовать несколько простых новых приёмов вы можете позволить вашему коду
делать часть работы за вас. Кроме того, правильное использование каскада означает,
что ваш сайт будет более масштабируемым и продолжать работу над ним будет гораздо проще.

Цитирование статьи, картинки - фото скриншот - Rambler News Service.
Иллюстрация к статье - Яндекс. Картинки.
Есть вопросы. Напишите нам.
Общие правила  поведения на сайте.

Множество раз я видел людей, которые забывали что означает первая

Смотрите также

А что там на главной? )))



Комментарии )))