Зачем нужно указывать следующие стили при использовании VML? - PullRequest
1 голос
/ 12 декабря 2010

Я изучаю VML прямо сейчас.И я заметил, что каждый пример содержит два определения стиля следующим образом:

        v\:* { behavior: url(#default#VML);}

        o\:* { behavior: url(#default#VML);}

Я знаю, что {behavior:url(#default#VML) означает применение поведения к элементам, выбранным v\:*.Но я не знаю, какие элементы выбирает v\:*.А что такое поведение #default#VML.

1 Ответ

1 голос
/ 17 января 2011

Поскольку VML - это подход на основе XML, ему необходимо отдельное пространство имен для всех его элементов.Чтобы использовать префикс в XML, необходимо объявить пространство имен.Это может показаться знакомым:

<xml:namespace ns="urn:schemas-microsoft-com:vml" prefix="v" />

Пространство имен, используемое для VML, обычно имеет префикс, используя букву "v", но это может быть что угодно.Селектор CSS v\:* просто выбирает любой элемент (* означает «любой») с префиксом «v».Обратная косая черта только для того, чтобы избежать двоеточия.

VML - это так называемое «поведение по умолчанию», предопределенное браузером.#default сообщает браузеру доступ к встроенным функциям, #VML определяет, какое поведение.

В библиотеке MSDN вы можете найти более подробную информацию о Использование поведения DHTML и Атрибут поведения .

...