На главную страницу
Форум txt.version   




Статья :: О спецификации CSS2

 

1  О спецификации CSS2


1.1  Как читать эту спецификацию

Данная спецификация написана в расчёте на читателей двух типов: CSS-авторов и CSS-разработчиков. Мы надеемся, что эта спецификация снабдит авторов средствами, необходимыми для создания эффективных, привлекательных и доступных документов без излишнего углубления в детали реализации CSS. Разработчики к тому  же смогут найти всё необходимое для создания соответствующих пользовательских агентов (ПА).
Спецификация начинается общим представлением CSS и постепенно всё более углубляется в технические подробности и специфику. Для быстрого доступа к информации служат общие и специализированные оглавления в начале каждого раздела и индексы - в электронном и печатном виде.

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


1.2  Как организована эта спецификация

Эта спецификация содержит следующие разделы:

Раздел 2: Введение в CSS2
Введение содержит краткий учебник по CSS2 и обсуждение принципов дизайна вне CSS2.

Раздел 3 - 20: Справочник-учебник CSS2
Основу составляет справочник языка CSS2. Этот справочник определяет, что может входить в таблицы стилей CSS2 (синтаксис, свойства, значения свойств) и как ПА обязаны интерпретировать эти таблицы стилей, чтобы претендовать на соответствие.

Приложения:
Содержат образцы таблиц стилей для HTML 4.0, изменения относительно CSS1, замечания по реализации и выполнению, грамматике CSS2, список нормативных и информативных ссылок и три индекса: Свойства, Дескрипторы и Общий индекс.


1.3  Соглашения


1.3.1
Язык документа: элементы и атрибуты

  • В CSS имена свойств, дескрипторов и псевдоклассов ограничиваются одиночными кавычками.
  • Значения в CSS ограничиваются одиночными кавычками.
  • Элементы языка документа записываются буквами в верхнем регистре.
  • Имена атрибутов языка документа записываются в нижнем регистре и ограничиваются двойными кавычками.


1.3.2  Определения свойств CSS

Каждое определение свойства CSS начинается общей ключевой информацией:

'property-name'
Значение:действительные значения & синтаксис
Начальное:начальное значение
Применяется:  к соответствующим элементам
Наследуется:  если свойство наследуется
Процентное:интерпретация процентных значений
Носитель:к каким группам носителей применяется свойство

Значение/Value

Определяет набор действительных значений свойства. Типы значений могут обозначаться по-разному:

  1. ключевые слова (например, auto, disc и т.д.);
  2. базовые типы данных, вводимые между символами "<" и ">" (например, <length>, <percentage> и т.д.). В электронной версии документа каждый объект базового типа данных связан со своим определением;
  3. типы, имеющие те же диапазоны значений, что и свойство, имеющее то же имя (например, <'border-width'>, <'background-attachment'> и т.д.). В данном случае имя типа является именем свойства (заключённым в кавычки) между символами "<" и ">" (например, <'border-width'>). В электронной версии документа каждый объект такого типа не-терминала ссылается на соответствующее определение свойства;
  4. не-терминалы, не использующие имя свойства. В данном случае имя не-терминала выводится между символами "<" и ">", например, <border-width>. Заметьте разницу между <border-width> и <'border-width'>; последнее определено в терминах предыдущего. Определение не-терминала размещается поблизости от его первого вхождения в данной спецификации. В электронной версии документа каждый объект этого типа ссылается на соответствующее определение значения.

Другие слова в этих определениях являются ключевыми словами, которые обязаны появляться буквально, без кавычек (например, red). Слэш (/) и запятая (,) также обязаны появляться буквально.

Значения должны быть организованы так:

  • Несколько соседних слов означают, что все они должны появляться в указанном порядке.
  • Вертикальная линия (|) разделяет две или более альтернативы: только одна из них должна быть записана.
  • Двойная вертикальная черта (||) разделяет две или более опции: одна или более из них должны быть записаны в любом порядке.
  • Скобки ([ ]) служат для группирования.

Соседство является более строгим, чем двойная вертикальная черта, а двойная вертикальная черта - строже, чем одинарная. Таким образом, следующие строки эквивалентны:

    a b   |   c || d e
  [ a b ] | [ c || [ d e ]]

За каждым типом, ключевым словом или группой в скобках может следовать один из модификаторов:

  • Звёздочка (*) - означает, что предыдущий тип, слово или группа появляется ноль или более раз.
  • Плюс (+) - означает, что предыдущий тип, слово или группа появляется один или более раз.
  • Знак вопроса (?) - означает, что предыдущий тип, слово или группа являются необязательными.
  • Пара чисел в фигурных скобках ({A,B}) - означает, что предыдущий тип, слово или группа появляется не менее А и не более В раз.

Следующий пример иллюстрирует различные значения типов:

Value\Значение: N | NW | NE
Value: [ <length> | thick | thin ]{1,4}
Value: [<family-name> , ]* <family-name>
Value: <uri>? <color> [ / <color> ]?
Value: <uri> || <color>

Начальное/Initial

Специфицирует начальное значение свойства. Если свойство наследуется, это значение, данное корневому элементу дерева документа. См. в разделе Каскад информацию о взаимодействии между значениями - начальными, унаследованными и специфицированными в таблице стилей.

Применяется к/ Applies to

Перечисляет элементы, к которым применяется данное свойство. Предполагается, что все элементы имеют все свойства, но некоторые свойства не имеют действия на представление элементов определённых типов. Например, 'white-space' действует только на элементы уровня блока (block-level elements).

Наследуется/Inherited

Обозначает, может ли свойство наследоваться от элемента-предка. См. в разделе Каскад информацию о взаимодействии между значениями - начальными, унаследованными и специфицированными в таблице стилей.

Процентные значения/Percentage values

Указывает, как должны интерпретироваться процентные значения, если они появляются в значении свойства. Если появляется "N/A", это значит, что свойство не принимает процентных значений.

Группы носителей/Media groups

Обозначает группы носителей, к которым свойство применяется. Условия соответствия определяют, что ПА обязаны поддерживать это свойство, если они поддерживают представление в типах носителя, включённых в эти группы носителей.


1.3.3 Сокращённые формы свойств

Некоторые свойства являются сокращёнными свойствами, что означает, что они позволяют авторам специфицировать значения нескольких свойств в одном свойстве.

Например, свойство 'font' является сокращением для одновременной установки 'font-style', 'font-variant', 'font-weight', 'font-size', 'line-height' и 'font-family'.

Если в сокращённом свойстве значения опущены (отсутствуют), каждое "отсутствующее" свойство устанавливается в своё начальное значение (см. раздел Каскад).

Пример(ы):

Несколько правил стиля в этом примере:

H1 { 
  font-weight: bold; 
  font-size: 12pt;
  line-height: 14pt; 
  font-family: Helvetica; 
  font-variant: normal;
  font-style: normal;
  font-stretch: normal;
  font-size-adjust: none
}

можно записать с помощью одного сокращённого свойства:

H1 { font: bold 12pt/14pt Helvetica }

В этом примере 'font-variant', 'font-stretch', 'font-size-adjust' и 'font-style' получают свои начальные значения.


1.3.4  Замечания и примеры

Все примеры, иллюстрирующие неправильное использование, явно помечены -  "НЕПРАВИЛЬНОЕ ИСПОЛЬЗОВАНИЕ".

Все примеры HTML соответствуют Строгому Определению Типа Документа HTML 4.0/Strict DTD, (определённом в [HTML40]), если иное не указано в объявлении типа документа.

Все примечания являются исключительно информативными.

Примеры и примечания промаркированы в коде HTML, чтобы ПА данной и CSS1 спецификаций представляли их особым образом.


1.3.5  Изображения и полные описания

Большинство изображений в электронной версии данной спецификации сопровождаются "полными описаниями" того, что изображено. Ссылка на полное описание обозначена "[D]" справа от изображения.

Изображения и полные описания являются исключительно информативными.


1.4  Благодарности

Данная спецификация является продуктом работы W3C Working Group над Cascading Style Sheets (Каскадными Таблицами Стилей) и Formatting Properties (Свойствами Форматирования). 

Помимо редакторов данной спецификации, членами Working Group являются:
Brad Chase (Bitstream),
Chris Wilson (Microsoft),
Daniel Glazman (Electricité de France),
Dave Raggett (W3C/HP),
Ed Tecot (Microsoft),
Jared Sorensen (Novell),
Lauren Wood (SoftQuad),
Laurie Anna Kaplan (Microsoft),
Mike Wexler (Adobe),
Murray Maloney (Grif),
Powell Smith (IBM),
Robert Stevahn (HP),
Steve Byrne (JavaSoft),
Steven Pemberton (CWI),
Thom Phillabaum (Netscape),
Douglas Rand (Silicon Graphics),
Robert Pernett (Lotus),
Dwayne Dicks (SoftQuad) и
Sho Kuwamoto (Macromedia).

Мы благодарим их всех.

Свой вклад внесли приглашённые эксперты Working Group:
George Kersher, Glenn Rippel (Bitstream),
Jeff Veen (HotWired), Markku T. Hakkinen (The Productivity Works),
Martin Dürst (W3C, до этого - Universität Zürich),
Roy Platon (RAL),
Todd Fahrner (Verso),
Tim Boland (NIST),
Eric Meyer (Case Western Reserve University) и
Vincent Quint (W3C).

Раздел Web Fonts разрабатывали Brad Chase (Bitstream),
David Meltzer (Microsoft Typography) и
Steve Zilles (Adobe).

Следующие сотрудники в разной степени участвовали в разработке разделов, относящихся в шрифтам: Alex Beamon (Apple), Ashok Saxena (Adobe), Ben Bauermeister (HP), Dave Raggett (W3C/HP), David Opstad (Apple), David Goldsmith (Apple), Ed Tecot (Microsoft), Erik van Blokland (LettError), François Yergeau (Alis), Gavin Nicol (Inso), Herbert van Zijl (Elsevier), Liam Quin, Misha Wolf (Reuters), Paul Haeberli (SGI) и, наконец, Phil Karlton (Netscape).

Раздел Paged Media (Страничные Носители) в значительной части авторизовали Robert Stevahn (HP) и Stephen Waters (Microsoft).

Robert Stevahn (HP), Scott Furman (Netscape) и Scott Isaacs (Microsoft) являлись ключевыми сотрудниками при разработке CSS Positioning (Позиционирование CSS).

Mike Wexler (Adobe) был редактором рабочих проектов, описавшим многие из новых возможностей CSS2.

T.V. Raman (Adobe) сделал основные разработки, относящиеся к Aural Cascading Style Sheets (ACSS)/Звуковым Таблицам Стилей/ и к концепции звукового представления, на базе своей работы в AsTeR (Audio System For Technical Readings). Он участвовал в разработке начального проекта спецификации ACSS, которая содержится в данной спецификации. Значения звуковых свойств для примера таблицы стилей HTML 4.0 разработаны им же; в настоящее время он использует всё это в каждодневной работе над своим audio desktop, в соединении с Emacspeak и браузером Emacs W3 (авторизованными William'ом Perry, разработавшим также звуковые расширения, ожидаемые W3).

Todd Fahrner (Verso) исследовал современные и предшествующие браузеры для разработки образцов таблиц стилей в Приложении.

Благодарим Jan Kärrman, автора html2ps, за большую помощь, оказанную при создании PostScript версии спецификации.

Преодолевая электронные и физические проблемы, следующие люди сотрудничали в разработке CSS2:
Alan Borning, Robert Cailliau, Liz Castro, James Clark, Dan Connolly, Donna Converse, Daniel Dardailler, Al Gilman, Daniel Greene, Scott Isaacs, Geir Ivarsøy, Vincent Mallet, Kim Marriott, Brian Michalowski, Lou Montulli, Henrik Frystyk Nielsen, Jacob Nielsen, Eva von Pepel, William Perry, David Siegel, Peter Stuckey и Jason White.

Дискуссия на www-style@w3.org обсуждала многие ключевые вопросы CSS. Особо мы хотели бы поблагодарить участников:
 Bjorn Backlund, Todd Fahrner, Lars Marius Garshol, Sue Jordan, Ian Hickson, Susan Lesch, Andrew Marshall, MegaZone, Eric Meyer, Russell O'Connor, David Perrell, Liam Quinn, Jon Seymour, Neil St. Laurent, Taylor, Brian Wilson и Chris Wilson.

Особая благодарность Web Accessibility Initiative Protocols и Formats Technical Review Working Group (WAI PF) за помощь в повышении доступности CSS2.

Благодарим Philippe Le Hégaret, чей проверщик CSS помогал выверить корректность примеров и правописания.

Особая благодарность Arnaud Le Hors, чья инженерная работа сделала этот документ рабочим.

Adam Costello улучшил эту спецификацию, выполнив детальную ревизию.

Наконец, благодарим Tim Berners-Lee, без которого всё это вообще было бы невозможно.


1.5  Авторские права

Copyright © 1997 World Wide Web Consortium, (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). Все Права Зарезервированы.

Документы на сайте W3C предоставляются для копирования на основе следующей лицензии.
Получая, используя и/или копируя этот документ или документ W3C, на который в данном документе имеется ссылка, Вы согласны с тем, что Вы прочитали, поняли и согласны со следующими положениями и условиями:

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

  1. Ссылка URI на оригинальный документ W3C.
  2. Уведомление о предшествующих авторских правах оригинального автора, если они отсутствуют, в форме: "Copyright © World Wide Web Consortium, (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). Все Права Зарезервированы."
  3. Если они указаны, СТАТУС документа W3C.

Если место позволяет, необходимо включать полный текст этого УВЕДОМЛЕНИЯ.
Дополнительно должны быть приписаны заверения для владельцев авторских прав на любое программное обеспечение, документы или другие объекты или продукты, которые Вы создали в соответствии с выполнением содержимого данного документа или любой его части.

Вы не имеете права, в соответствии с данной лицензией, создавать модификации или выдержки.

ЭТОТ ДОКУМЕНТ ДАЁТСЯ "AS IS\КАК ЕСТЬ" И ВЛАДЕЛЬЦЫ АВТОРСКИХ ПРАВ НЕ ДАЮТ НИКАКИХ УКАЗАНИЙ ИЛИ ГАРАНТИЙ, ЯВНЫХ ИЛИ КОСВЕННЫХ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯ, ГАРАНТИИ РЕАЛИЗУЕМОСТИ, ПРИГОДНОСТИ ДЛЯ КОНКРЕТНЫХ ЦЕЛЕЙ, НЕНАРУШЕНИЕ ЗАКОНА ИЛИ ИМЕНОВАНИЕ, - ЧТО СОДЕРЖИМОЕ ДАННОГО ДОКУМЕНТА ПОДХОДИТ ДЛЯ ЛЮБЫХ ЦЕЛЕЙ, НИ ЧТО ВЫПОЛНЕНИЕ ТАКОГО СОДЕРЖИМОГО НЕ  ВЫЗОВЕТ НАРУШЕНИЯ ПАТЕНТОВ КАКОЙ-ЛИБО ТРЕТЬЕЙ СТОРОНЫ, АВТОРСКИХ ПРАВ, ТОРГОВЫХ МАРОК И ДРУГИХ ПРАВ.

ВЛАДЕЛЬЦЫ АВТОРСКИХ ПРАВ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ЗА ЛЮБОЙ ПРЯМОЙ, КОСВЕННЫЙ, СПЕЦИАЛЬНЫЙ ИЛИ ВОЗМОЖНЫЙ ВРЕД, НАНЕСЁННЫЙ ИЗ-ЗА КАКОГО-ЛИБО ИСПОЛЬЗОВАНИЯ ДАННОГО ДОКУМЕНТА ИЛИ ВЫПОЛНЕНИЯ ИЛИ РЕАЛИЗАЦИИ ЕГО СОДЕРЖИМОГО.

Имена и торговые марки владельцев авторских прав НЕ могут использоваться для публичных целей и рекламы данного документа или его содержимого без специального письменного разрешения. Наименование авторских прав в данном документе всегда остаётся за их владельцами.

О спецификации CSS2

страницы в данном разделе 
 О спецификации CSS2  Полное описание анонимного бокса блока
 Звуковые таблицы стилей  Полное описание первого примера форматирования Bach/XML
 Полное описание второго примера форматирования Bach/XML  Полное описание моделей фона
 Модель бокса  Полное описание иллюстрации областей бокса
 Полное описание примера бокса-списка, показывающего поля,заполнения и рамки  Установка значений свойств, Каскадирование и Наследование
 Полное описание примера вычисления рядав таблицы и вертикального выравнивания ячеек  Пример баннера
 Приложение B: Изменения по сравнению с CSS1  Полное описание примера сжатия областей
 Цвета и фон  Соответствие: требования и рекомендации
 Полное описание примера, иллюстрирующего скрытые внутренние рамки  Индекс дескрипторов
 Полное описание диаграммы примера дерева документа  Полное описание примера оттенения текста
 Полное описание примера зависающей заглавной буквы.  Полное описание примера пунктуации и зависающей заглавной буквы
 Полное описание примера перекрывания поплавком элементов с нормальным расположением  Полное описание примера того, как поплавки перекрывают боксы с нормальным расположением
 Полное описание примера поплавка и обтекания текста  Полное описание примера, иллюстрирующего позиционирование относительно позионированного предка
 Полное описание примера, иллюстрирующего абсолютное позиционирование  Полное описание примера, иллюстрирующего всплывание без 'clear'
 Полное описание примера всплывания с 'clear'  Полное описание примера всплывания
 Полное описание примера нормального расположения  Полное описание примера относительного позиционирования
 Полное описание примера абсолютного позиционирования относительно начального содержащего блока  Шрифты
 Полное описание примера фрэймоподобной структуры  Генерируемое содержимое, автоматическая нумерация и списки
 Приложение D: Грамматика CSS2  Каскадные Таблицы Стилей, Уровень 2
 Индекс  Полное описание поведения полей/рамок в разделённом инлайн-боксе
 CSS2 Введение  Полное описание форм шрифта italic
 Полное описание кернинга  Полное описание примера расположения заголовка слева от таблицы
 Полное описание примера маркёров inside относительно outside  Типы носителя
 Приложение С: Замечания по реализации и выполнению для шрифтов  Полное описание примера несжимаемого 'overflow'
 Полное описание примера сжимаемого 'overflow'  Полное описание примера соотношений между страничным боксом и листом (бумаги)
 Страничные носители  Полное описание изображения GUI Windows 95 с описанием шрифтов
 Полное описание иллюстрации к определению пиксела  Полное описание соотношений с пикселом выводного устройства
 Индекс свойств  Ссылки
 Приложение А: Образец таблицы стилей для HTML 4.0  Селекторы
 Синтаксис CSS2 и базовые типы данных  table-overlap-desc.html
 Полное описание таблицы расходов на путешествие  Таблицы
 Полное описание примера приоритетов модели сжимающихся рамок  Полное описание примера вычисления фона
 Полное описание примера расчёта фона ячеек  Полное описание примера рядов, разделённых горизонтальными линиями рамки
 Полное описание примера модели раздельных рамок  Полное описание примера, иллюстрирующего модель сжимающихся рамок
 Текст  Полное описание примера заголовка над таблицей
 Интерфейс пользователя  Модель визуального форматирования. Детали.
 Визуальные эффекты  Модель визуального форматирования


Разделы
Околокомпьютерная литература (375)
Программирование (102)
Программы (75)
ОС и Сети (49)
Интернет (29)
Аппаратное обеспечение (16)
Базы данных (6)

Содержание сайта (выборка)
Apache
Протоколы TCP/IP (принципы, протоколы и архитектура)

PHP, PELR, JSP
PHP
JavaServer Pages (JSP)

Базы данных
Основы mysql
СУБД INFORMIX
СУБД POSTGRES
Основы проектирования реляционных баз данных

HTML, javascript
Спецификация HTML 4.01
Каскадные Таблицы Стилей, Уровень 2
Клиентский JavaScript. Справочник.
JavaScript руководство пользователя
Серверный JavaScript 1.4. Руководство по Использованию.

Паскаль, C, C++, C#
GCC (примеры)
FAQ Валентинa Озеровa DELPHI
C





 
©  programming-lang.com  справочник программиста