CSS b> : правильне використання - запорука успіху b> p>
Михайло Дубаков p>
Починаємо
свій шлях до майстерності. Він буде досить довгим і непростим, але ви
впораєтеся, якщо у вас є мета. Принаймні, до цього моменту ви вже
володієте певним багажем знань, достатнім для застосування на практиці.
Однак використовувати CSS можна
по-різному. Мета цього розділу - навчити вас застосовувати CSS правильно. Повірте, це не так просто,
як здається на перший погляд. Адже можна просто особливо не задумуючись написати
таблицю стилів з безліччю класів і непотрібних оголошень, яка буде
коректно працювати. Але така таблиця стилів буде неоптимальною і незручною.
Неоптимальною тому, що її можна значно скоротити і зменшити об'єм, що
важливо. Незручною тому, що розбиратися в неврегульованих нагромадженні
класів досить складно. Взагалі жорстких правил при написанні таблиці стилів
ні, тому що написати стиль можна по-різному і це буде працювати, однак
є безліч рекомендацій. Крім того, можна все ж виділити одну головну
правило, яке завжди треба застосовувати при використанні CSS. p>
Правило h2>
Перш
ніж написати якийсь стиль або ввести новий клас, задумайтеся, чи не можна
оптимізувати і порядок код іншим способом. Зробити так, щоб не вводити
цей клас або ввести максимально широко. Логіка - незамінний помічник будь-якого
професійного веб-майстра. Запам'ятайте це. P>
Отже,
переходимо безпосередньо до розгляду способів, завдяки яким ви
істотно полегшите код і власне життя. p>
Форматування таблиць стилів h2>
Головне
вимога - у таблиці стилів повинен бути порядок. Візьмемо приклад з попередньої
голови. Ось ця таблиця: p>
P (color: # 000; font: x-small Verdana) p>
BODY (background: # FFF) p>
# mainmenu A (color: # 000; font: bold small Arial) p>
H3 (color: # 000; font-family: Arial) p>
. back (background: url (img/fragment_3.gif) no-repeat;) p>
# submenu A (color: # FFF; font: bold xx-small Arial) p>
. bluecol (background: # 1d3d4e) p>
Погодьтеся,
що розібратися у ній з першого погляду не так-то просто. Тут перемішані всі
види селектор і немає ніякого порядку. Структура таблиці непередбачувана і, що
ще гірше, в неї абсолютно відсутня внутрішня логіка побудови, тобто немає
ніяких правил, які допомогли б знайти потрібне оголошення. p>
Врахуйте,
що ця таблиця дуже маленька, а у великій невпорядкованою таблиці
розібратися буде ще складніше. Якщо спробувати мислити логічно, то можна
вивести декілька правил, які допоможуть організувати таблицю стилів. p>
Як
ви пам'ятаєте, існує кілька типів селектор: елементи, класи, ID. Так що якщо формувати блоки
за типами селектор вже буде якийсь рівень організованості. Перше правило
організації таблиць. p>
Рада h2>
Розділіть
селектори, тобто сформуйте перший блок з селектор по елементах, другий
блок з селектор по класах, а третій блок з селектор по ID. Блоки один від одного можна відокремлювати
додатковим перекладом рядки. p>
В
нашому випадку блок селектор по елементах буде складатися з H3, P і BODY, другий
блок з селектор по класах буде складатися з. back і. bluecol, третій блок з селектор по ID складатиметься з # mainmenu і # submenu. А таблиця стилів буде виглядати так: p>
BODY (background: # FFF) p>
H3 (color: # 000; font-family: arial) p>
P (color: # 000; font: x-small Verdana) p>
. back (background: url (img/fragment_3.gif) no-repeat;) p>
. bluecol (background: # 1d3d4e) p>
# mainmenu A (color: # 000; font: bold small arial) p>
# submenu a (color: # fff; font: bold xx-small arial) p>
Крім
того, у кожному блоці селектори треба розставити у алфавітному порядку. На першій
погляд, це не дуже сильно впорядкує таблицю стилів, проте є досить
вагома причина дотримувати таке правило. На перших порах вам буде абсолютно всі
одно, в якому порядку розташовані селектори в трьох блоках, проте поступово
ви звикнете розташовувати селектори саме в алфавітному порядку, внаслідок
чого в своїх таблицях стилів будете орієнтуватися легко, і швидко знаходити
необхідні правила. Ви будете підсвідомо відчувати, що селектор. Back знаходиться
на початку блоку селектор по класах, тому що починається з літери b, а селектор. vis - в кінці, тому що починається з
букви v. p>
Окремо
узяте правило теж можна записати по-різному. Часто замість того, щоб
записувати правило в один рядок p>
P (color: # 000;
font-size: 12px; padding-left: 1em) p>
використовують
запис у кілька рядків: p>
P ( p>
color: # 000; p>
font-size: 12px; p>
padding-left: 1em) p>
Робиться
це для полегшення перегляду таблиці стилів. На мій погляд, писати кожне
оголошення з нового рядка краще тільки для невеликих таблиць, тому що велика
таблиця стилів при такій формі запису розтягнеться на кілька екранів, і пошук
потрібного оголошення тільки затрудняється. p>
Для
наочності запис стилів у кілька рядків використовується в даній книзі. Це
поліпшує сприйняття, тому що довгих лістингів коду мало. p>
Що
стосується самих властивостей, то для них ви можете встановити свої власні
правила. Давайте розглянемо два зовсім маленькі таблиці стилів. p>
Перша: p>
P.emphasize ( p>
font-size: 14px; p>
text-indent: 1em; p>
color: # 000; p>
font-style: italic) p>
TD ( p>
font-style: italic; p>
color: # 000; p>
font-size: 14px) p>
Друга: p>
P.emphasize ( p>
color: # 000; p>
font-style: italic; p>
font-size: 14px; p>
text-indent: 1em) p>
TD ( p>
color: # 000; p>
font-style: italic; p>
font-size: 14px) p>
А
тепер уважно порівняйте їх і дайте відповідь на питання, яка структурована
краще і чому? Подумайте дві хвилини, не читайте далі. p>
Знайшли
відповідь? Якщо так, то ви звичайно погодитеся зі мною, що друга таблиця виглядає
більш логічною. У правилах другій таблиці стилів властивість кольору йде на першому
місці, потім слідують властивості шрифту, а потім властивості тексту, тоді як у
перші таблиці стилів немає ніякої системи. Особливо це важливо для великих
таблиць стилів і в тому випадку, якщо ви записуєте правило в один рядок. p>
Для
себе ви можете виробити який завгодно порядок розташування властивостей, однак при
написанні таблиць стилів ви повинні суворо його дотримуватися. Наприклад, я завжди
на першому місці ставлю колір, на другому - властивості шрифту, на третьому - властивості
тексту, а потім поля, відступи і рамки. Повторюю, спочатку порядок може бути
будь-яким, головне, щоб ви його суворо дотримувалися і поступово звикали до нього. p>
Рада p>
Сформулюйте
раз і назавжди свої власні правила структури таблиці стилів і дотримуйтесь
їх неухильно. Звичка - потужний інструмент збільшення продуктивності. P>
Імена класів і b> ID b> p>
При
верстці вам частенько доведеться вводити нові класи і якось їх називати.
Природним чином виникає бажання, щоб назви були короткими і
логічними. Якщо клас для заголовків розділу назвати head1, то це буде досить логічно і
коротко, а якщо bigblacktext
- Нелогічно і довго. Звичайно, часто зустрічаються ситуації, коли не виходить
придумати відповідну коротку назву, тоді доводиться чимось жертвувати: або
завдовжки, або логічністю. Особисто я вважаю за краще жертвувати логічністю, тому
що у своєму коді я розберуся завжди. Однак якщо над проектом працює
кілька HTML-верстальників
і кожний з них створює будь-яку частину сайту, то краще жертвувати довжиною, тому
що в цьому випадку логічність набагато важливіше. Погодьтеся, далеко не кожен
зрозуміє, що клас aa
позначає, наприклад, відступ праворуч на 10 пікселів, тоді як клас rightpad10 про це свідчить
досить однозначно. Взагалі вам весь час доведеться балансувати на межі
між обсягом і логікою, важливо зберігати баланс в більшості випадків і чітко
уявляти собі, коли його можна порушити. Порушити його можна у двох випадках. P>
Якщо
ви професіонал і працюєте над HTML-кодом
сайту поодинці. p>
Якщо
вам до зарізу треба максимально зменшити об'єм коду і важливим стає кожен
зайвий байт. p>
Більше
про правила форматування таблиць стилів нічого сказати не можна. Перейдемо до того,
як створювати оптимізовані таблиці. p>
Оптимізація
таблиць стилів p>
В
будь-якій справі оптимізація є процес бажаний, а часто необхідний. Це
природно, тому що він несе всілякі вигоди, починаючи з збільшення
швидкості роботи програми та закінчуючи зменшенням витрат. Якщо взяти
локальну область, таку як верстка сайтів та написання таблиць стилів в
Зокрема, то під оптимізацією розуміється зменшення обсягу коду, що приносить
наступні вигоди: p>
незначно
прискорюється завантаження сторінок; p>
писати
і редагувати таблицю стилів стає дещо простіше через зменшення
числа селектор і властивостей, що в кінцевому підсумку веде до економії часу,
хай і незначною. p>
Як
бачите, не варто чекати від оптимізації якихось чудес, але й нехтувати їй не
потрібно, тому що це характеризує вас як професіонала і показує ваше ставлення
до справи. Власне кажучи, прагнення до оптимізації коду - одна з
характерних рис професійних HTML-верстальників. p>
Існує
кілька правил, які можуть допомогти вам написати оптимізовану таблицю
стилів. p>
Стилі за замовчуванням h2>
Не
варто писати нічого зайвого. Практично всі властивості CSS мають яке-небудь значення за замовчуванням.
Не варто явно їх вказувати. Наприклад, стиль на елемент
, наведений нижче p>
P ( p>
font-style: normal; p>
letter-spacing: normal; p>
text-decoration: none) p>
взагалі
не має сенсу, тому що всі ці значення для елементів
встановлені за замовчуванням. Навіщо ж їх
вказувати явно? Звичайно, можливі випадки, коли треба переписати встановлений
раніше стиль. Наприклад, ви хочете, щоб всі елементи
були підкресленими і пишіть стиль: p>
H1 ( p>
text-decoration: underline;) p>
Але
раптом вам знадобилося, щоб деякі з заголовків першого рівня виводилися
неподчеркнутимі. Для цього вам доведеться ввести якийсь додатковий
клас. Наприклад, такий: p>
H1.nounderline ( p>
text-decoration: none) p>
Те
Тобто ви перше правилом переписали значення за замовчуванням для елементів
, тому потім довелося
явним чином відновлювати це значення для заголовків з класом nounderline. У цьому випадку іншого
виходу немає, але взагалі якщо вам немає необхідності змінювати стилі елементів, то і
не треба прописувати значення за замовчуванням явним чином. p>
Правило p>
Не
вказуйте в таблиці стилів значень, які є для цього елемента
значеннями за замовчуванням. p>
Скорочені
форми запису p>
Другий
спосіб скоротити обсяг таблиці стилів - використання скорочених форм запису
деяких властивостей. У таблиці вони
систематизовані. p>
Скорочена форма p>
Вхідні властивості p>
font: italic small-caps 12px/140% Tahoma,
sans-serif p>
font-style: italic p>
font-variant: small-caps p>
font-weight: normal p>
font-size: 12px p>
line-height: 140% p>
font-family: Tahoma, sans-serif p>
margin: 1em 2em 0 1em p>
margin-top: 1em p>
margin-right: 2em p>
margin-bottom: 0em p>
margin-left: 1em p>
padding: 10px 20px p>
padding-top: 10px p>
padding-right: 20px p>
padding-bottom: 10px p>
padding-left: 20px p>
border: 1px solid # 000 p>
border-top: 1px solid # 000 p>
border-right: 1px solid # 000 p>
border-bottom: 1px solid # 000 p>
border-left: 1px solid # 000 p>
border-width: 1px p>
border-style: solid p>
border-color: # 000 p>
background: url ( "backgr.gif") # FFF
repeat-x p>
background-color: # FFF p>
background-image: url ( "backgr.gif") p>
background-repeat: repeat-x p>
background-attachment: scroll p>
background-position: 0px 0px p>
Використання
скорочених форм запису є справою досить корисним і потрібним, тому що
обсяг таблиці стилів при цьому значно зменшується. Це видно вже з
порівняння правого і лівого стовпців табл. 5.1, але щоб остаточно вас
переконати, я наведу ще один нескладний приклад. Хай нам треба створити блок rule, який має чорну рамку
товщиною один піксель і внутрішні відступи величиною 10 пікселів. Ширина блоку
буде 300 пікселів, а текст в ньому буде виводитися напівжирним шрифтом Verdana розміром 12 пікселів. Якщо
не користуватися скороченими формами запису взагалі, то код буде такий: p>
# rule ( p>
font-family: Verdana, sans-serif; p>
font-weight: bold; p>
font-size: 12px; p>
width: 300px; p>
border-top: 1px solid # 000; p>
border-right: 1px solid # 000; p>
border-bottom: 1px solid # 000; p>
border-left: 1px solid # 000; p>
padding-top: 10px; p>
padding-right: 10px; p>
padding-bottom: 10px; p>
padding-left: 10px) p>
Скористаємося
скороченими формами запису, і правило для блоку у нас вийде таке: p>
# rule ( p>
font: bold 12 px Verdana, sans-serif; p>
width: 300px; p>
border: 1px solid # 000; p>
padding: 10px) p>
Перше
правило займало 290 байт, а друга всього 96. Вага зменшився в три рази, тобто
оптимізація досягла 300%! Звичайно, цей приклад показує що буде, якщо не
використовувати скорочень взагалі, але тим не менше він абсолютно реальний і вам
частенько доведеться створювати дуже схожі блоки, так що прийміть до уваги
ці 300%. p>
Угрупування h2>
Для
оптимізації таблиць стилів треба з розумом застосовувати угруповання. Як ви вже знаєте,
угруповання - це об'єднання селектор з однаковими оголошеннями. Однак з
цього визначення не випливає досить неочевидне твердження, що
групувати селектори можна тільки в тому випадку, якщо вони містять абсолютно
однакові оголошення. Наприклад, у нас є така таблиця стилів: p>
P ( p>
color: # 000; p>
font: 14px Tahoma, Verdana, sans-serif) p>
TD ( p>
color: # 000; p>
font: 14px Tahoma, Verdana, sans-serif) p>
P ( p>
text-indent: 2em) p>
BODY ( p>
color: # 000; p>
font: 14px Tahoma, Verdana, sans-serif) p>
Її
можна оптимізувати так: p>
P, TD,
BODY ( p>
color: # 000; p>
font: 14px Tahoma, Verdana, sans-serif) p>
P ( p>
text-indent: 2em) p>
Вийшло
дуже компактно, але зате логіка таблиці стилів сильно постраждала. Якщо вам
знадобиться змінити будь-яке оголошення в елементі
, то у великій таблиці ви його можете
шукати дуже довго, тому що селектори на цей елемент будуть розташовуватися в
різних місцях. Запам'ятайте правило. P>
Правило p>
Всі
оголошення для одного і того ж елемента повинні перебувати в одному місці p>
Це
означає, що в нашому прикладі ми можемо об'єднати тільки селектори на елементи
і
, а селектори на елемент треба звести в один, як того
вимагає правило: p>
BODY, TD ( p>
color: # 000; p>
font: 14px Tahoma, Verdana, sans-serif) p>
P ( p>
color: # 000; p>
font: 14px Tahoma, Verdana, sans-serif; p>
text-indent: 2em) p>
Крім
того, якщо ви захочете, скажімо, додати до таблиці стилів фон сторінки, то
доведеться розбити групу селектор BODY
і TD, тому що стилі до них
вже не будуть зовсім однакові. Вот нам, приміром, знадобилося додати
фоновий колір на елемент .
Тоді доведеться розбити групу, і таблиця стилів буде виглядати так: p>
BODY ( p>
color: # 000; p>
background-color: # CCC; p>
font: 14px Tahoma, Verdana, sans-serif) p>
TD ( p>
color: # 000; p>
font: 14px Tahoma, Verdana, sans-serif) p>
P ( p>
color: # 000; p>
font: 14px Tahoma, Verdana, sans-serif; p>
text-indent: 2em) p>
Рядкові
та прописні p>
Що
стосується манери запису селектор, то селектори елементів я рекомендую писати
великими літерами, тоді як всі інші - малими. Насправді це не
відіграє великої ролі, тому що CSS
регістронезавісімий мову, тобто різниці між великими та малими літерами
немає, тому все вирішує звичка. Оголошення я теж рекомендую писати малими
буквами, хоча це знову ж таки справа звички. p>
Ось
практично всі основні правила написання компактних і коректних таблиць
стилів. Давайте зараз оптимізуємо окремо взяту таблицю стилів, щоб
остаточно на практиці закріпити отримані знання. p>
Оптимізація на практиці h2>
Вихідна
таблиця у нас страшно неорганізована і заплутана: p>
A: link (font-weight:
bold; COLOR: black) p>
A: visited (font-weight:
bold; COLOR: # 555555) p>
A: active (font-weight:
bold; COLOR: # FF0000) p>
A: hover (font-weight:
bold; COLOR: # FF0000) p>
# lnk A: link (color:
# 666666) p>
# lnk A: visited (color:
# 666666) p>
# lnk A: active (color:
# ff9900) p>
# lnk a: hover (color:
# ff9900) p>
BODY (MARGIN: 0px;
PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px)
. imgnews (margin-right: 12px) p>
CODE (color: # 00C;
font-family: courier new) p>
em (font-weight: bold;
font-style: normal; color: black) p>
. norm (color: # 555; FONT:
12px verdana, helvetica, Sans-serif) p>
p (text-align: justify;
color: # 555; FONT: 12px verdana, sans-serif) p>
input (border: 1px solid
black; margin: 1px 2px) p>
TEXTAREA (border: 1px solid
black; margin-top: 1px; margin-left: 2px; margin-bottom: 1px; margin-letf: 2px) p>
. EXAMPLE
(background-color: # eeeeee; padding: 20px; BORDER: 1px dotted black) p>
Розібратися
в ній непросто. Як бачите, тут порушені всі правила, що описані в цьому розділі.
Почнемо всі виправляти і впорядковувати. Перш за все розіб'ємо таблицю стилів на
три блоки по селектору: елементи, класи, ID, а в кожному блоці розташуємо селектори в алфавітному порядку.
Цифри позначають порядковий номер рядка і до самої таблиці стилів не відносяться.
Вийде так: p>
1. A: link (font-weight:
bold; COLOR: black) p>
2. A: visited
(font-weight: bold; COLOR: # 555555) p>
3. A: active (font-weight:
bold; COLOR: # FF0000) p>
4. A: hover (font-weight:
bold; COLOR: # FF0000) p>
5. BODY (MARGIN: 0px;
PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px) p>
6. CODE (color: # 00C;
font-family: courier new) p>
7. em (font-weight: bold;
font-style: normal; color: black) p>
8. input (border: 1px
solid black; margin: 1px 2px) p>
9. p (text-align:
justify; color: # 555; FONT: 12px verdana, sans-serif) p>
10. TEXTAREA (border: 1px
solid black; margin-top: 1px; margin-right: 2px; margin-bottom: 1px;
margin-letf: 2px) p>
11. . EXAMPLE
(background-color: # eeeeee; padding: 20px; BORDER: 1px dotted black) p>
12. . imgnews
(margin-right: 12px) p>
13. . norm (color: # 555;
FONT: 12px verdana, helvetica, Sans-serif) p>
14. # lnk A: link (color:
# 666666) p> 15. # lnk A: visited
(color: # 666666) p>
16. # lnk A: active (color:
# ff9900) p>
17. # lnk a: hover (color: # ff9900) p>
Ходімо
далі. Для початку займемося правилами для посилань, які знаходяться в рядках
1-4. Заздалегідь домовимося, що в оголошеннях стилів спочатку буде йти колір і
фон, потім шрифт, потім поля і відступи. Отже: p>
перенесемо
на початок оголошення кольору; p>
властивість
COLOR запишемо малими
літерами; p>
замість
позначення чорного кольору словом black
запишемо # 000; p>
інші
значення скоротимо так: # 555555 поміняємо на # 555, # FF0000 поміняємо на # F00. p>
Вийде
ось що: p>
1. A: link ( p>
color: # 000; p>
font-weight: bold) p>
2. A: visited ( p>
color: # 555; p>
font-weight: bold) p>
3. A: active ( p>
color: # F00; p>
font-weight: bold) p>
4. A: hover ( p>
color: # F00; p>
font-weight: bold) p>
Зауважте,
що останні два селектора мають абсолютно однакові оголошення, так що
можна сміливо їх згрупувати: p>
1. A: link ( p>
color: # 000; p>
font-weight: bold) p>
2. A: visite ( p>
color: # 555; p>
font-weight: bold) p>
3. A: active, A: hover ( p>
color: # F00; p>
font-weight: bold) p>
Займемося рядків 5-7: p>
5. BODY (MARGIN: 0px;
PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px) p>
6. CODE (color: # 00C;
font-family: courier new) p>
7. em (font-weight: bold;
font-style: normal; color: black) p>
Оголошення
стилів на елемент
містить чотири відступу, причому всі вони мають значення 0, так що можна сміливо
замість всіх чотирьох відступів використовувати скорочену форму запису, крім того,
треба переписати всі властивості малими літерами: p>
5. BODY ( p>
margin: 0px; p>
padding: 0px) p>
В
шостий рядку на перший погляд все правильно, однак у властивості font-family зазначений тільки один шрифт. Зазначимо, крім нього, ще й шрифтове
сімейство, в даному випадку це monospace.
Крім того, назви шрифтів з двох і більше слів рекомендується укладати в
лапки: p>
6. CODE ( p>
color: # 00C; p>
font-family: "Сourier new",
monospace) p>
В
сьомий рядку запишемо назва селектора em великими літерами, перемістив в початок властивість color і замінимо значення black на # 000. p>
7. EM ( p>
color: # 000; p>
font-weight: bold; p>
font-style: normal) p>
Тепер
розглянемо рядки 8-10: p>
8. input (border: 1px
solid black; margin: 1px 2px) p>
9. p (text-align:
justify; color: # 555; FONT: 12px verdana, sans-serif) p>
10. TEXTAREA (border: 1px
solid black; margin-top: 1px; margin-right: 2px; margin-bottom: 1px;
margin-letf: 2px) p>
Восьма
рядок практично правильна, треба тільки переписати селектор input великими літерами. У рядку 9 треба: p>
селектор
p замінити на P; p>
перенести
в кінець правила властивість text-align; p>
переписати
властивість FONT малими
літерами. p>
Вийде так: p>
9. P ( p>
color: # 555; p>
font: 12px Verdana, sans-serif; p>
text-align: justify) p>
В
десятому рядку можна дещо скоротити. Зауважте, що верхнє і нижнє поля
мають значення 1 піксель, а ліве і праве - 2 піксела. Це можна записати
скорочено за допомогою оголошення margin:
1px 2px. Крім того, треба в оголошенні рамок
поміняти значення кольору black
на # 000. Тоді десятий рядок буде такий: p>
10. TEXTAREA ( p>
border: 1px solid # 000; p>
margin: 1px
2px) p>
А
зараз порівняйте виправлені рядка 8 і 10. Вони абсолютно однакові, тобто
можна згрупувати селектори INPUT
і TEXTAREA: p>
8. INPUT, TEXTAREA ( p>
border: 1px solid # 000; p>
margin: 1px
2px) p>
З
блоком селектор по елементах ми розібралися, так що перейдемо до класів: p>
11. . EXAMPLE
(background-color: # eeeeee; padding: 20px; BORDER: 1px dotted black) p>
12. . imgnews
(margin-right: 12px) p>
13. . norm (color: # 555;
FONT: 12px verdana, helvetica, Sans-serif) p>
Тут
треба в рядку 11 переписати назву класу EXAMPLE і властивість BORDER
малими літерами, а також написати значення кольору в скороченій формі. Рядок
12 тепер повністю коректна. А в рядку 13 треба переписати властивість FONT малими літерами: p>
11. . example ( p>
background-color: # EEE; p>
border: 1px dotted # 000; p>
padding: 20px) p>
12. . imgnews ( p>
margin-right: 12px) p>
13. . norm ( p>
color: # 555; p>
font: 12px Verdana, Helvetica, sans-serif) p>
Залишився
блок контекстних селектор: p>
14. # lnk A: link (color: # 666666) p>
15. # lnk A: visited (color:
# 666666) p>
16. # lnk A: active (color:
# ff9900) p>
17. # lnk a: hover (color: # ff9900) p>
Тут
треба тільки записати кольору у скороченій формі і згрупувати селектори 14 і
15, а також 16 і 17: p>
14. # lnk A: link, # lnk
A: visited ( p>
color: # 666) p>
15. # lnk A: active, # lnk
A: hover ( p>
color: # F90) p>
Вся
оновлена таблиця стилів буде виглядати наступним чином: p>
1. A: link ( p>
color: # 000; p>
font-weight: bold) p>
2. A: visited ( p>
color: # 555; p>
font-weight: bold) p>
3. A: active, A: hover ( p>
color: # F00; p>
font-weight: bold) p>
5. BODY ( p>
margin: 0px; p>
padding: 0px) p>
6. CODE ( p>
color: # 00C; p>
font-family: "Courier new",
monospace) p>
7. EM ( p>
color: # 000; p>
font-weight: bold; p>
font-style: normal) p>
8. INPUT, TEXTAREA ( p>
border: 1px solid # 000; p>
margin: 1px 2px) p>
9. P ( p>
color: # 555; p>
font: 12px Verdana, sans-serif; p>
text-align: justify) p>
11. . example ( p>
background-color: # EEE; p>
border: 1px dotted # 000; p>
padding: 20px) p>
12. . imgnews ( p>
margin-right: 12px) p>
13. . norm ( p>
color: # 555; p>
font: 12px Verdana, Helvetica, sans-serif) p>
14. # lnk A: link, # lnk
A: visited ( p>
color: # 666) p>
15. # lnk A: active, # lnk
A: hover ( p>
color: # F90) p>
Як
бачите, таблиця стилів стала значно більш структурованою і читається.
Крім того, первісна таблиця важила 877 байт, а оптимізована таблиця
важить 677 байт (якщо прибрати переклади рядків і зайві пробіли перед кожним
оголошенням). Ми змогли зменшити вагу таблиці стилів на 23%, що само по собі
не так уже й мало. До того ж вона стала більш логічною, так що тепер знайти потрібне
оголошення або селектор не складе труднощів. Це і є мета цього розділу --
навчитися створювати легко прочитувані і компактні таблиці стилів, а також
оптимізувати старі, вже створені раніше. p>
Сподіваюся,
ви візьмете на озброєння описані способи організації та оптимізації
таблиць стилів, тому що в іншому випадку створені вами таблиці будуть
виглядати непрофесійно. Прагнення до досконалості - гарна якість. Ця
голова є однієї, нехай і маленької, але все ж таки сходинкою на шляху до нього. p>
Список літератури h2>
Для
підготовки даної роботи були використані матеріали з сайту http://www.webmascon.com/
p>
|