Читаем Спецификация CSS2 полностью

Примечание. В будущих уровнях CSS свойство 'content' сможет принимать дополнительные значения, позволяя варьировать стиль участков генерируемого содержимого, но в CSS2 всё содержимое псевдоэлементов :before или :after имеет один стиль.

Могут быть следующие ситуации:

1Элемент 'run-in' или 'compact' имеет псевдоэлемент :before типа 'inline': псевдоэлементы учитываются, если размер бокса элемента вычислен (для 'compact') и выведен внутри того же бокса блока, что и элемент.

2Элемент 'run-in' или 'compact' имеет псевдоэлемент :after типа 'inline': применяются правила предыдущего пункта.

3Элемент 'run-in' или 'compact' имеет псевдоэлемент :before типа 'block': псевдоэлемент форматируется как блок поверх элемента и не участвует в вычислении размера элемента (для 'compact').

4Элемент 'run-in' или 'compact' имеет псевдоэлемент :after типа 'block': и элемент, и его псевдоэлемент :after форматируются как боксы блока. Элемент не форматируется как инлайн-бокс в своём собственном псевдоэлементе :after.

5Элемент, следующий за элементом 'run-in' или 'compact', имеет :before типа 'block': решение о том, как форматировать элемент 'run-in'/'compact', принимается с учётом результирующего бокса блока из псевдоэлемента :before.

6Элемент, следующий за элементом 'run-in' или 'compact', имеет :before типа 'inline': решение о том, как форматировать элемент 'run-in'/'compact', зависит от значения 'display' элемента, к которому присоединён :before.

Это заголовок 'run-in' с псевдоэлементом :after, после которого идёт параграф с псевдоэлементом :before. В этом примере все псевдоэлементы являются инлайн (по умолчанию).

Когда таблица стилей:

H3 { display: run-in } H3:after { content: ": " } P:before { content: "... " }

применяется к такому документу-источнику:

Centaurs

have hoofs

have a tail

визуальное форматирование будет таким:

Centaurs: ... have hoofs ... have a tail

В CSS2 авторы могут специфицировать, в чувствительной к стилю и контекстно-зависимой манере, как ПА должны отображать знаки кавычек. Свойство 'quotes' специфицирует пары знаков кавычек для каждого уровня внедрённого закавычивания. Свойство 'content' даёт доступ к таким знакам кавычек и вставляет их до и после закавычивания.

'quotes'

Значение: [ ]+ | none | inherit

Начальное: зависит от ПА

Применяется: ко всем элементам

Наследуется: да

Процентное: N/A

Носитель: визуальный

Это свойство специфицирует знаки кавычек для любого количества внедрённых закавычиваний. Значения имеют следующий смысл:

none

Значения 'open-quote' и 'close-quote' свойства 'content' не производят знаков кавычек.

[ ]+

Значения для 'open-quote' и 'close-quote' свойства 'content' берутся из данного списка пар знаков кавычек (закрывающих и открывающих). Первая (самая левая) пара представляет самый внешний уровень закавычивания, вторая пара - первый уровень внедрения и т.д. ПА обязан применять подходящие пары знаков кавычек в соответствии с уровнем внедрения.

Применение следующей таблицы стилей:

/* Специфицируются пары кавычек двух уровней для двух языков */ Q:lang(en) { quotes: '"' '"' "'" "'" } Q:lang(no) { quotes: """ """ "<" ">" } /* Вставляются кавычки до и после содержимого элемента Q */ Q:before { content: open-quote } Q:after { content: close-quote }

к данному фрагменту HTML:

Quotes

Quote me!

позволит ПАгенту выдать:

"Quote me!"

а данный фрагмент HTML:

Quotes

Trondere grater nar Vinsjan pa kaia blir deklamert.

выдаст:

"Trondere grater nar blir deklamert."

Примечание. Хотя знаки кавычек, специфицированные в 'quotes' предыдущего примера, по соглашению находятся на клавиатурах компьютера, установки для высококачественного вывода потребуют других символов ISO 10646. В следующей информативной таблице приведён список некоторых символов кавычек ISO 10646:

Перейти на страницу:

Похожие книги