Отмена значимости стилей




Каскадные таблицы стилей – CSS

Каскадность – это правила, по которым определяется какие стилевые свойства задаются браузером элементам на странице (последовательность применения стилей к определённым элементам и разрешение при необходимости, возникающих конфликтов).

Основные источники информации о стилях, которые образуют каскад:

К основным источникам информации о стилях относятся:

- Встроенные стили браузера по умолчанию.

- Стили, заданные автором документа, их в свою очередь можно указать в трех местах:

-Внешний CSS файл (с использованием элемента <link>, который размещается внутри элемента <head>).

- В теле документа (в настоящее время разрешается размещать стили только в начале документа - стили помещаются внутри парного тега <style>, который в свою очередь должен находиться внутри элемента <head>).

- Внутри элемента (стили, которые задаются с использованием глобального HTML атрибута style).

- Стили, заданные пользователем (в некоторых современных браузерах возможность определить свои стили для конкретного сайта доступна встроенными средствами в настройках, для других требуется расширение для браузера). Это позволит стилизовать какой-то сайт по своему усмотрению и вкусу, или убрать с него какие-то блоки, которые Вам не хотелось бы видеть.

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

 

Рассмотрим пример.

Предположим, что у нас есть абзац (элемент <p>), в котором указана определенная гиперссылка (элемент <a>). HTML код может выглядеть следующим образом:

<p class = "main"> Для перехода к основной статье нажмите <a href = "#"> вот на это место. </a></p>

На страницу добавим следующие стили:

a { /* используем селектор типа */

color: brown; /* устанавливаем цвет текста */

}

p a { /* используем селектор потомков */

font-weight: bold; /* устанавливаем жирное начертание шрифта */

}

.main a { /* используем селектор потомков */

background-color: orange; /* задаем цвет заднего фона */

text-decoration: none; /* убираем декорирование текста (нижнее подчеркивание) */

}

 

Создайте разметку и добавьте стили в документ.

 

В браузере посмотрите, какие стили были применены к элементу «гиперссылка»

 

Все три селектора с различными стилями были применены к элементу <a>, а встроенные стили элемента - цвет и декорирование текста (нижнее подчеркивание) были заменены на авторские стили (стили автора документа) по той причине, что они имеют больший приоритет.

 

Отмена значимости стилей

В некоторых случаях, два стиля могут иметь одинаковый приоритет (одинаковое количество пунктов), что доставляет сильную головную боль по той причине, что браузер в этом случае выбирает последний определенный стиль в таблице стилей, что может не соответствовать вашим ожиданиям. Если вы поменяете местами конфликтующие стили, то действовать будет тот, который будет указан ниже в таблице стилей. Старайтесь избегать подобных ситуаций и запомните этот момент. Эти знания помогут Вам сэкономить большое количество времени.

В CSS предусмотрена возможность отменить значимость стилей (не учитывать количество пунктов). Для этого необходимо добавить к значению CSS свойства ключевое слово !important.

Пример использования ключевого слова !important:

<!DOCTYPE html><html><head> <meta charset = "UTF-8"> <title>Пример отмены значимости стилей</title><style>a.rtfm { /* селектор типа (1 пункт) + селектор класса (10 пунков) = 11 пунктов */color: green; /* устанавливаем цвет текста зеленый */}a { /* селектор типа (1 пункт) */color: red!important; /* отменяем значимость стилей и устанавливаем цвет текста красный */}</style></head> <body> <a class = "rtfm" href = "https://google.com">Найти</a> </body></html>

В этом примере с использованием ключевого слова!important мы отменили значимость стилей и установили цвет текста для гиперссылки красный. В данном случае если бы мы не использовали ключевое слово!important, то цвет бы остался зеленым по той причине, что он имеет большую значимость (задан с использованием селектора класса).

 

Обратите внимание, что!important указывается в конце каждого свойства и действует только на одно свойство, а не на весь блок объявлений!

Если вы указали значение!important для двух однотипных свойств различных стилей, то в этом случае браузер рассматривает их по принципу правил значимости (приоритет отдаётся более значимому свойству). Старайтесь избегать подобных ситуаций.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2020-05-09 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: