Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК_XML.doc
Скачиваний:
16
Добавлен:
03.05.2019
Размер:
3.94 Mб
Скачать

5.7. Импорт других таблиц стилей

Можно воспользоваться директивой @import в таблице каскадных стилей, чтобы встроить в нее одну или несколько других таблиц стилей. Возможность импорта отдельных таблиц стилей позволяет хранить правила для связанных стилей в отдельных файлах, а затем объединять их при создании документов определенного типа.

Вот обобщенная форма записи директивы @import, где URLТаблСтил есть полный или относительный URL (Uniform Resource Locator) файла, содержащего таблицу каскадных стилей, которую можно импортировать:

@import url(URLТаблСтил);

Например, следующая директива (использующая относительный URL), помещенная в начале таблицы стилей в Листинге 1.3, импортирует таблицу стилей, содержащуюся в файле Book.css (который должен находиться в той же папке, что и основная таблица стилей):

/* Имя файла: Inventory01.сss */

@tmport url(Book.css);

BOOK

{display: block;

margin-top: 12pt;

font-size: 10pt}

/* продолжение таблицы стилей... */

Директива @import должна располагаться в начале таблицы стилей перед правилами. Можно поместить в начале таблицы стилей несколько директив @import.

При импортировании одной или нескольких таблиц стилей, браузер объединяет правила, содержащиеся в основной и импортируемых таблицах стилей. Однако в случае возникновения конфликта правил основная таблица стилей (из файла, в который осуществляется импорт) имеет приоритет над импортируемыми таблицами стилей. При импортировании несколько таблиц стилей, правила из таблицы стилей, импортированной последней, имеют приоритет над правилами из ранее импортированных таблиц стилей.

5.8. Задание значений url

URL представляет собой стандартный Internet-адрес, такой как http://mspress.microsoft.com/. Директива @import и свойство background image требуют указания значения URL для задания местонахождения соответствующего ресурса (таблицы стилей или файла изображения). URL задается так, как указано ниже. Обратите внимание, что нельзя помещать пробелы между url и символом открывающей скобки (.

url(URL)

Можно использовать полностью заданный URL, как в следующих примерах:

@import url(http://www.my_domain.com/stylesheets/MyStyles.css);

INVENTORY

{background-image: url(file:///E:\Exarnple Code\Background.gif)}

Можно также использовать частичный URL, который задает местонахождение относительно местонахождения файла таблицы стилей, содержащего URL. Относительные URL в таблицах стилей работают - подобно URL в HTML-страницах. Например, если файл таблицы стилей находится в папке Example Code, следующий относительный URL будет эквивалентен полному URL из предыдущего примера (а именно, file:///E:\Example Code\Background.gif):

INVENTORY {background-image: url(Background.gif)}

5.9. Связывание таблицы стилей с xml-документом

Чтобы связать таблицу каскадных стилей с XML-документом, необходимо вставить в документ зарезервированную инструкцию по обработке xrnl-stylesheet. Эта инструкция по обработке имеет следующую обобщенную форму записи, где в качестве CSSFilePath задаётся местонахождение файла таблицы стилей:

<?xml-stylesheet type="text/css" href=CSSFilePath?>

Можно использовать полный URL, например:

<?xrnl-stylesrieet type="text/css"

href="http://www.my_domain.com/lnventory01.css"?>

Чаще используется частичный URL, который задает местонахождение относительно местонахождения XML-документа, содержащего инструкцию по обработке xml-stylesheet, например:

<?xml-stylesheet type="text/css" href="lnventory01.css"?>

(Относительный URL используется чаще, поскольку файл таблицы стилей обычно хранится в той же папке, что и XML-документ, либо в одной из вложенных папок.)

Обычно инструкция по обработке xml-stylesheet добавляется в пролог XML-документа, вслед за объявлением XML.

Возможность присоединять к XML-документу внешнюю таблицу стилей увеличивает гибкость форматирования документа. Можно полностью изменить вид документа, просто присоединив к нему другую таблицу стилей. Чтобы сделать это, достаточно всего лишь отредактировать URL в инструкции по обработке xml-stylesheet, не внося никаких других изменений в XML-документ.

При связывании таблицы стилей с XML-документом, этот документ можно открыть непосредственно в Internet Explorer - например, можно ввести URL документа или путь к файлу в поле Address (Адрес) и нажать клавишу Enter.

Или, предполагая, что Internet Explorer есть браузер, используемый по умолчанию, можно просто дважды щелкнуть на имени файла XML-документа в окне Windows Explorer (Проводник) или в окне папки. Internet Explorer откроет XML-документ и отобразит его с использованием инструкций из связанной таблицы стилей.

Если браузер не может найти файл таблицы стилей, заданный в инструкции по обработке xml-stylesheet, он отобразит текст документа с использованием своего собственного набора свойств (например, с текущими значениями гарнитуры и размера шрифта). Если XML-документ не связан с таблицей стилей (т.е. документ не содержит инструкции по обработке xml-stylesheet), то Internet Explorer отобразит исходный XML-код для документа, но не содержимое документа.

Можно включить в XML-документ более одной таблицы стилей, вставив для каждой из них инструкцию по обработке xrnl-stylesheet в начале XML-документа, например:

<?xml version="1.0"?>

<?xml-stylesheet type="text/css" href="Book01.css"?>

<?xml-stylesheet type="text/css" href="Book02.css"?>

<INVENTORY>

<!-- содержимое элемента Документ -->

</INVENTORY>

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

При установке связи с несколькими таблицами стилей, Internet Explorer объединяет правила из различных таблиц. Если отдельные таблицы стилей содержат конфликтующие правила, правила из последней связываемой с документом таблицы стилей имеют приоритет над правилами, содержащимися в предшествующих таблицах стилей.