Контуры

CSS2 вводит последний основной элемент стилевого оформления пользовательского интерфейса: контуры. Контур немного похож на рамку, но между ними существует два главных отличия. Во-первых, контуры не участвуют в потоке документа, в отличие от рамок, и поэтому при своем появлении или исчезновении не приводят к повторному форматированию. Если задать для элемента 50-пиксельный контур, то он, скорее всего, будет перекрывать другие элементы. Во-вторых, контуры могут быть непрямоугольными, но не спешите радоваться. Это не значит, что вы можете создавать круглые контуры. Напротив, это означает, что контур строкового элемента может вести себя не так, как вела бы рамка этого элемента. Пользователь может «объединять» части контуров, создавая единую непрерывную, но не прямоугольную форму.

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


Это может приводить к некоторым интересным эффектам. Спецификация CSS2 утверждает следующее: «Контур может отрисовываться, начиная непосредственно от внешней стороны края рамки». Обратите внимание на слово может в этом предложении. Агентам пользователя рекомендуется поступать так, как предлагает спецификация, но это требование может не выполняться. Агент пользователя мог бы принять решение отрисовывать рамки внутри внутреннего края рамки или на некотором небольшом расстоянии от рамки. На момент написания данной книги все броузеры, которые поддерживают контуры, отрисовывают их непосредственно по внешнему краю рамки, так что, слава богу, здесь все согласованно.

Контуры считаются частью стилевого оформления пользовательского интерфейса, потому что они чаще всего применяются для обозначения текущего фокуса ввода. Если пользователь для перехода от ссылки к ссылке применяет клавиатуру, то ссылка, которой в данный момент принадлежит фокус ввода, как правило, очерчена контуром. В Internet Explorer для Windows контур применяется к любой выбранной пользователем ссылке («щелкнутой», если используется мышь) и имеет свойство сохраняться, даже если в этом нет необходимости. Другие броузеры применяют контуры к элементам текстового ввода, которым принадлежит фокус клавиатуры, показывая таким образом, куда будут вставляться набираемые на клавиатуре символы. Как вы увидите, стилевое оформление контуров во многом похоже на оформление рамок, но кроме только что упомянутых между ними имеются еще некоторые ключевые отличия. Мы лишь вкратце остановимся на подобиях и внимательно рассмотрим различия.

Оцените статью: (0 голосов)
0 5 0

Статьи из раздела CSS на эту тему:
Графические курсоры
Задание стиля контура
Изменение курсора
Курсоры
Курсоры перемещения