Типы устройств
7 Типы устройств
Содержание
7.1 Ознакомление с типами устройств
Одним из важнейших свойств таблиц стилей является то, что они определяют способ представления документа для различных устройств вывода: монитора, синтезатора речи, устройства печати азбуки Брайля, печатных устройств и т.д.Некоторые свойства CSS предназначены только для конкретных устройств (например, свойство 'cue-before' предназначено для агентов пользователей, управляющих воспроизведением звука). Однако иногда таблицы стилей, созданные для различных типов устройств, могут использовать одно и то же свойство, но при этом только требовать, чтобы оно принимало различные значения в зависимости от используемого устройства. Например, свойство 'font-size' может использоваться как при работе с монитором, так и с печатающими устройствами. Т.к. эти два устройства отличны друг от друга, то для одного и того же свойства могут потребоваться различные значения: при отображении документа на экране обычно необходим шрифт большего размера, чем при его выводе на печатающее устройство. Практика свидетельствует, что шрифты семейства sans-serif лучше воспринимаются на экране, а шрифты семейства serifs лучше читаются на бумаге. По этой причине очень важно определять тип устройства, к которому относится таблица стилей или некоторый ее раздел.
7.2 Построение аппаратно-зависимых таблиц стилей
Существует два способа построения аппаратно-зависимых таблиц стилей:
- Задать целевое устройство с помощью правил @media или @import.
@import url("loudvoice.css") aural; @media print { /* далее идет таблица стиля для печати */ }
- Задать конечное устройство в языке документа. Например, в HTML 4.0 ([HTML40]) атрибут "media" элемента LINK
указывает конечное устройство для внешней таблицы стилей:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"> <HTML> <HEAD> <TITLE>Связь с конечным устройством</TITLE> <LINK rel="stylesheet" type="text/css" media="print, handheld" href="foo.css"> </HEAD> <BODY> <P>Основное тело документа </BODY> </HTML>
Правило @import описывается в главе о каскаде.
7.2.1 Правило @media
Правило @media определяет список типов устройств (разделенных запятыми), соответствующих набору правил (ограниченных фигурными скобками). Структура правила @media позволяет задавать правила для различных устройств в пределах одной таблицы стилей:
@media print { BODY { font-size: 10pt } } @media screen { BODY { font-size: 12pt } } @media screen, print { BODY { line-height: 1.2 } }
7.3 Распознаваемые типы устройств
Тип устройств, определяемый в CSS, именует набор свойств CSS. Агент пользователя, который поддерживает определенный тип устройств, должен Уметь использовать все свойства, применяющиеся к данному типу.
Имена, приписываемые типам устройств в CSS, отражают конечные устройства, для которых соответствующие свойства имеют смысл. В следующем списке типов устройств CSS описания, находящиеся в скобках, не являются нормативными. Они только дают представление об устройстве, которое может относиться к данному типу.
- all
- Предназначен для всех устройств.
- aural
- Предназначен для речевых синтезаторов. Подробную информацию можно получить в разделе о звуковых таблицах стилей.
- braille
- Предназначен для устройств чтения азбуки Брайля.
- embossed
- Предназначен для печати азбуки Брайля.
- handheld
- Предназначен для переносимых портативных устройств (небольшие монохромные экраны с ограниченной полосой частот).
- Предназначен для страничных непрозрачных материалов и для документов, просматриваемых на экране в режиме предварительного просмотра печати. Информацию о принципах форматирования, характерных только для устройств с постраничной разбивкой, можно получить в разделе об устройствах постраничного вывода.
- projection
- Предназначен для настенных презентаций, например, для проекторов или для печати плакатов. Информацию о принципах форматирования, характерных только для устройств с постраничной разбивкой, можно получить в разделе об устройствах постраничного вывода.
- screen
- В первую очередь предназначен для цветных дисплеев.
- tty
- Предназначен для устройств, использующих набор символов с фиксированной шириной, например, телетайпов, терминалов или портативных устройств с ограниченными возможностями отображения. Для устройств типа "tty" не следует использовать пикселы.
- tv
- Предназначен для устройств типа телевизора (для которых характерны низкое разрешение, цветное изображение, ограниченная прокрутка на экране, возможность передачи звука).
Названия типов устройств не зависят от регистра.
Из-за быстрого изменения технологий в CSS2 не представлен список конкретных типов устройств, выступающих в качестве значений для правила @media.
Примечание. В будущих версиях CSS список устройств, возможно, будет дополнен. Разработчикам не стоит полагаться на названия типов устройств, которые еще не определены в описании CSS.
7.3.1 Группы устройств
Определение каждого свойства CSS сопровождается перечислением типов устройств, для которых оно должно реализовываться конформным агентом пользователя. Т.к. свойства применяются обычно к нескольким устройствам, то в пункте "применяется к устройствам" определения свойства указываются не отдельные типы, а группы устройств. Свойство применяется ко всем типам устройств, принадлежащим хотя бы одной из упомянутых групп устройств.
В CSS2 имеются следующие группы устройств:
- устройства без разбивки или с постраничной разбивкой. "Оба" обозначает, что свойство применяется к обеим группам устройств.
- устройства визуального, звукового или тактильного форматирования.
- устройства с сеточным (устройства с символьной сеткой) или растровым типом вывода. "Оба" обозначает, что свойство применяется к обеим группам устройств.
- интерактивные (взаимодействующие с пользователем) или статические (не взаимодействующие с пользователем) устройства. "Оба" обозначает, что свойство применяется к обеим группам устройств.
- all(включает все типы устройств)
В следующей таблице представлены взаимоотношения между группами устройств и типами устройств:
Типы устройств | Группы устройств | |||
---|---|---|---|---|
без разбивки/с разбивкой | визуальные / звуковые / тактильные | сеточные / растровые | интерактивные / статичные | |
aural | без разбивки | звуковые | N/A | оба |
braille | без разбивки | тактильные | сеточные | оба |
emboss | страничные | тактильные | сеточные | оба |
handheld | оба | визуальные | оба | оба |
страничные | визуальные | растровые | статичные | |
projection | страничные | визуальные | растровые | статичные |
screen | без разбивки | визуальные | растровые | оба |
tty | без разбивки | визуальные | сеточные | оба |
tv | оба | визуальные, звуковые | растровые типа | оба |