CSS в документе XSL - PullRequest
       4

CSS в документе XSL

14 голосов
/ 31 июля 2010

Как мне реализовать CSS в XSL-файле?я попробовал это:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<link rel="stylesheet" type="text/css" href="dxsl.css"/>
<xsl:output method="html" />

но выкинуло ошибку:

XSLTProcessor::importStylesheet(): Found a top-level element link with null namespace URI 

и

Warning: XSLTProcessor::transformToXml(): No stylesheet associated to this object 

Ответы [ 4 ]

4 голосов
/ 31 июля 2010

Если я правильно вас понимаю, вы хотите, чтобы вывод имел конкретную таблицу стилей?

XSL - это язык, используемый для преобразования XML из одного формата в другой (в некотором смысле это похоже на применение таблицы стилей CSS),В типичном случае использования происходит то, что вы берете какой-нибудь файл XML и используете XSL для его преобразования, скажем, в XHTML.В этот вывод вы можете включить таблицу стилей, используя элемент link, если хотите, но XSL действительно не использует CSS как таковой.(В общем, попробуйте поместить CSS в XSL как часть преобразования, чтобы использовать его для вывода XHTML.)

Если это документ XML, вам просто нужно включить ссылку на XSL, и он долженобрабатывать преобразование для вас автоматически.

3 голосов
/ 01 декабря 2014

Ваш HTML (тег ссылки) должен быть внутри шаблона xsl :.Шаблон xsl: должен быть внутри таблицы стилей xsl:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:output method="html" />

<xsl:template match="/*//*[1]">

    <link rel="stylesheet" type="text/css" href="dxsl.css"/>

</xsl:template>

</xsl:stylesheet>
1 голос
/ 31 июля 2010

'link' - это элемент HTML, и вы пытаетесь использовать его как элемент XML. XSL изменяет ввод в другой документ. Вы не используете CSS в XSL-файле. Вы вставляете его в (X) HTML-файл и применяете его там.

0 голосов
/ 26 марта 2015

Как сказал другой ответ, ссылка должна быть сгенерирована преобразованием.Вот пример, который генерирует небольшой HTML-документ со ссылкой на CSS из простого XML-документа.Путь css также основан на данных.

Попробуйте это

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...