Невозможно отучить людей изучать самые ненужные предметы.
Введение в CSS
Преимущества стилей
Добавления стилей
Типы носителей
Базовый синтаксис
Значения стилевых свойств
Селекторы тегов
Классы
CSS3
Надо знать обо всем понемножку, но все о немногом.
Идентификаторы
Контекстные селекторы
Соседние селекторы
Дочерние селекторы
Селекторы атрибутов
Универсальный селектор
Псевдоклассы
Псевдоэлементы
Кто умеет, тот делает. Кто не умеет, тот учит. Кто не умеет учить - становится деканом. (Т. Мартин)
Группирование
Наследование
Каскадирование
Валидация
Идентификаторы и классы
Написание эффективного кода
Вёрстка
Изображения
Текст
Цвет
Линии и рамки
Углы
Списки
Ссылки
Дизайны сайтов
Формы
Таблицы
CSS3
HTML5
Блог для вебмастеров
Новости мира Интернет
Сайтостроение
Ремонт и советы
Все новости
Справочник от А до Я
HTML, CSS, JavaScript
Афоризмы о учёбе
Статьи об афоризмах
Все Афоризмы
Помогли мы вам |
Множество раз я видел людей, которые забывали что означает первая "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>
#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>
#footer{
width : 100%;
clear : both;
…
}
#footer ul{
width : 48%;
float : left;
…
}
То есть лучше использовать родительский элемент для задания первоначального стиля, а затем по каскаду,
доопределять стили для дочерних элементов в соответствии с ним.
Другой хороший пример:
<div id="header">
<h1 id="logo">CSS Tricks</h1>
</div>
#header{
width:100%;
}
#logo{
…
[styles]
…
}
Поскольку элемент h1 встречается только один раз в заголовке, то лучше было бы написать так:
<div id="header">
[h1]CSS Tricks[/h1]
</div>
#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). Конечно, это не сама цель, однако вам надо
будет запоминать меньше классов для использования в разметке, и в реальных
задачах разница будет заметна.
Начав использовать несколько простых новых приёмов вы можете позволить вашему коду
делать часть работы за вас. Кроме того, правильное использование каскада означает,
что ваш сайт будет более масштабируемым и продолжать работу над ним будет гораздо проще.
|
|