Различают несколько типов стилей.
1. По-умолчанию. Описывается в стандарте HTML.
Для HTML 4 - http://www.w3.org/TR/CSS2/sample.html
2. ПользовательскийПользователь может подключить свой файл со стилями для html страницы. В разных браузерах это можно сделать по разному.
3. АвторскийСобственно то, что разработчики сайта подключили одним из 4х методом(ссылка).
Так как к станицы может быть подключено более одного типа стилей, появляется проблема, какие правила важнее.
В таких случаях работает следующие правила. Приоритет убывает сверху вниз:
p {color:red !important;}
Приоритеты в авторских стилях
В стилях могут быть описаны правила, в которых различные селекторы выбирают один и тот же элемент. В таких случаях опять возникает дилема, какое правило важнее.
* { } /* 0 баллов */
em { } /* 1 балл */
p::first-letter { } /* 2 балла (один селектор тегов и один псевдоэлемент) */
p [title="Приветствие"] { }/* 11 баллов (по одному селектору тегов и атрибутов)*/
div.fine .one { } /* 21 балл (два класса и один селектор тегов) */
#header a:hover { } /* 111 баллов (идентификатор, селектор тегов и псевдокласс)*/
Способы повышения приоритеты стилей:
1. Добавление !impotant к правилу.
Правило помеченное словом important всегда будет иметь больший приоритет по сравнению с другими.
2. Использование css свойств в атрибуте style для нужного html элемента.Но important все равно имеет больший приоритет.
Факторы влияющие на приоритет по убыванию:
Браузер формирует из отдельных файл одну общую таблицу стилей.
Браузер считывает и применяет стили из файлов по порядку их появления в коде.
Итоговая таблица стилей с учетом приоритетов:
Источники:http://ktonanovenkogo.ru/html/uroki-css/prioritety-css-important-kombinacii-gruppirovka-selektorov-polzovatelskie-avtorskie-stili.html http://seodon.ru/css/prioritety-stilej.php
1. По-умолчанию. Описывается в стандарте HTML.
Для HTML 4 - http://www.w3.org/TR/CSS2/sample.html
2. ПользовательскийПользователь может подключить свой файл со стилями для html страницы. В разных браузерах это можно сделать по разному.
3. АвторскийСобственно то, что разработчики сайта подключили одним из 4х методом(ссылка).
Так как к станицы может быть подключено более одного типа стилей, появляется проблема, какие правила важнее.
В таких случаях работает следующие правила. Приоритет убывает сверху вниз:
- Пользовательские стили с Important
- Авторские стили с Important
- Авторские стили
- Пользовательские стили
- Стили, принятые для Html элементов в спецификации CSS по умолчанию (когда ни автор, ни пользователь ничего другого не задали)
p {color:red !important;}
Приоритеты в авторских стилях
В стилях могут быть описаны правила, в которых различные селекторы выбирают один и тот же элемент. В таких случаях опять возникает дилема, какое правило важнее.
Чтобы вычислить уровень приоритета (специфичности) какого-либо селектора браузеры используют определенный алгоритм, где каждому типу начисляется определенное количество баллов, определяющее вес селектора. Стили того селектора, который наберет больший вес, в конечном итоге и будут применены к элементу. Если же получится так, что какие-то селекторы, которые воздействуют на один и тот же HTML-элемент наберут одинаковое число баллов, то будут использованы стилевые свойства того, который находится в коде ниже.
А теперь давайте рассмотрим, каким же образом браузеры считают эти баллы.
Пример:* { } /* 0 баллов */
em { } /* 1 балл */
p::first-letter { } /* 2 балла (один селектор тегов и один псевдоэлемент) */
p [title="Приветствие"] { }/* 11 баллов (по одному селектору тегов и атрибутов)*/
div.fine .one { } /* 21 балл (два класса и один селектор тегов) */
#header a:hover { } /* 111 баллов (идентификатор, селектор тегов и псевдокласс)*/
Способы повышения приоритеты стилей:
1. Добавление !impotant к правилу.
Правило помеченное словом important всегда будет иметь больший приоритет по сравнению с другими.
2. Использование css свойств в атрибуте style для нужного html элемента.Но important все равно имеет больший приоритет.
Факторы влияющие на приоритет по убыванию:
- Использование Css свойства в атрибуте style вместе с Important
- Использование Important в Css свойстве из внешнего файла таблиц стилей или же из тега style в Html коде
- Использование Css свойства в атрибуте style
- Использование большего числа селекторов Id для данного Css свойства
- Использование большего числа селекторов классов, псевдоклассов и атрибутов для данного Css свойства
- Использование большего числа селекторов тегов и псевдоэлементов для данного Css свойства
- Более низкое расположение Css свойства в коде, при прочих равных условиях
Браузер формирует из отдельных файл одну общую таблицу стилей.
Браузер считывает и применяет стили из файлов по порядку их появления в коде.
Итоговая таблица стилей с учетом приоритетов:
Источники:http://ktonanovenkogo.ru/html/uroki-css/prioritety-css-important-kombinacii-gruppirovka-selektorov-polzovatelskie-avtorskie-stili.html http://seodon.ru/css/prioritety-stilej.php
Комментариев нет:
Отправить комментарий