CSS: различия между версиями

[отпатрулированная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
м оформление, викификация
м Орфография
Строка 19:
 
=== Способы подключения CSS к документу ===
Правила CSS пишутся на [[формальный язык|формальном языке]] CSS. Правила могут располагаться как в самом [[веб-документ]]е, внешний вид которого они описывают, так и во внешних [[файл]]ах, имеющих [[формат файла|формат]] CSS. Формат CSS — это [[текстовый файл]], в котором содержится перечень правил CSS и комментариев к ним.<br>CтилиСтили CSS могут быть подключены или внедрены в описываемый ими [[веб-документ]] четырьмя способами:
* когда описание стилей находится в отдельном файле, оно может быть подключено к документу посредством элемента {{tago|link}}, включенноговключённого в элемент {{tago|head}}:
<source lang="html5">
<!DOCTYPE html>
Строка 33:
</html>
</source>
* когда файл стилей размещается отдельно от родительского документа, он может быть подключенподключён к документу инструкцией @import в элементе{{tago|style}}:
<source lang="html5">
<!DOCTYPE html>
Строка 221:
** Самым низким приоритетом обладают стили, наследуемые в документе элементом от своих предков;
** Более высоким приоритетом обладают стили, заданные во внешних таблицах стилей, подключённых к документу;
** Ещё более высоким приоритетом обладают стили, заданные непосредственно селекторами всех десяти видов (см. подраздел „виды селекторов“), содержащимися в контейнерах style данного документа. Нередки случаи, когда к какому-нибудь элементу имеют отношение, задают его вид, несколько таких селекторов. Такие конфликты между ними разрешаются с помощью расчёта специфичности каждого такого селектора и применения этих селекторов к данному элементу в порядке убывания их специфичностей. РасчетРасчёт специфичности будет описан ниже.
*** Специфичность селекторов делится на 4 группы — <code>a</code>, <code>b</code>, <code>c</code>, <code>d</code>:
**** если стиль встроенный (определенопределён как <code>style="..."</code>, то <code>а=1</code>, иначе <code>a=0</code>) ;
**** значение <code>b</code> равно количеству идентификаторов (иначе — id=» «, они ничинаются с <code>#</code>) в селекторе;
**** значение <code>c</code> равно количеству классов (class=» ", они ничинаются с <code>.</code>), псевдоклассов (они ничинаются с <code>:</code>, например <code>a:hover</code>) и селекторов атрибутов (<code>input[type="text"</code>);
**** значение <code>d</code> равно количеству селекторов типов элементов (<code>h1 { color: blue; }</code>) и псевдо-элементов (<code>p::first-line { color: blue; }</code>). После этого полученное значение приводится к числу (обычно в десятичной системе счисления). Селектор, обладающий большим значением специфичности, обладает и большим приоритетом.
*** Таблица расчетарасчёта специфичности{{sfn|Макфарланд|c=126}}:
 
{| class="wikitable"
Строка 305:
Преимущества:
* Несколько дизайнов страницы для разных устройств просмотра. Например, на экране дизайн будет рассчитан на большую ширину, во время печати меню не будет выводиться, а на [[Карманный персональный компьютер|КПК]] и сотовом телефоне меню будет следовать за содержимым.
* Уменьшение времени загрузки страниц сайта за счетсчёт переноса правил представления данных в отдельный CSS-файл. В этом случае браузер загружает только структуру документа и данные, хранимые на странице, а представление этих данных загружается браузером только один раз и может быть [[кэш|закэшировано]].
* Простота последующего изменения дизайна. Не нужно править каждую страницу, а достаточно лишь изменить CSS-файл.
* Дополнительные возможности оформления. Например, с помощью CSS-вёрстки можно сделать блок текста, который остальной текст будет обтекать (например для меню) или сделать так, чтобы меню было всегда видно при прокрутке страницы.
Строка 349:
Рекомендация W3C, принята [[7 июня]] [[2011 год]]а.
 
CSS2.1 основана на CSS2. Кроме исправления ошибок, в новой ревизии изменены некоторые части спецификации, а некоторые и вовсе удалены. УдаленныеУдалённые части могут быть в будущем добавлены в CSS3.
 
=== Уровень 3 (CSS3) ===
Строка 366:
В отличие от предыдущих версий спецификация разбита на модули, разработка и развитие которых идёт независимо. CSS3 основан на CSS2.1, дополняет существующие свойства и значения и добавляет новые.
 
Нововведения, начиная с малых, вроде закругленныхзакруглённых углов блоков, заканчивая трансформацией ([[Мультипликация (технология)|анимацией]]) и, возможно, введением [[Переменная (программирование)|переменных]]<ref>[http://rip747.wordpress.com/2008/04/10/css3-css-variables-are-a-bad-idea-just-allow-us-to-call-other-selectors/ CSS3: css variables are a bad idea. Just allow us to call other selectors.] // Rip’s Domain</ref><ref>[http://www.dave-woods.co.uk/index.php/css-variables/ CSS Variables] // dave-woods.co.uk</ref>.
 
=== Уровень 4 (CSS4) ===