<head> 元素 xsl:template 被忽略,XML,XSL,XHTML
<head> element inside xsl:template ignored, XML, XSL, XHTML
我有一个奇怪的问题,head
元素在 <xsl:template>
元素中被忽略:
<xsl:output method="xml" indent="yes" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-
strict.dtd" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"/>
<xsl:template match="/">
<html xmlns="http://www.w3.org/1999/XSL/xhtml">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<link rel="stylesheet" href="./design.css" type="text/css"/>
<title>XML Data</title>
</head>
<body>
<header id="header">Some text</header>
</body>
</html>
</xsl:template>
Chrome/Mozilla 结果:title 元素写在 body 元素内,而不是标签标题。 .css 也会被忽略。
可能是什么问题?
http://www.w3.org/1999/XSL/xhtml
不是 XHTML 命名空间,如果你真的想创建 XHTML 然后使用命名空间 http://www.w3.org/1999/xhtml
.
当然不清楚您如何 运行 XSLT 以及浏览器是否将 XSLT 结果视为 text/html 或 application/xml 或任何其他 XML 媒体类型,但修复名称空间将是识别 XHTML 元素并将其用于您期望的语义的第一步。
我有一个奇怪的问题,head
元素在 <xsl:template>
元素中被忽略:
<xsl:output method="xml" indent="yes" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-
strict.dtd" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN"/>
<xsl:template match="/">
<html xmlns="http://www.w3.org/1999/XSL/xhtml">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<link rel="stylesheet" href="./design.css" type="text/css"/>
<title>XML Data</title>
</head>
<body>
<header id="header">Some text</header>
</body>
</html>
</xsl:template>
Chrome/Mozilla 结果:title 元素写在 body 元素内,而不是标签标题。 .css 也会被忽略。
可能是什么问题?
http://www.w3.org/1999/XSL/xhtml
不是 XHTML 命名空间,如果你真的想创建 XHTML 然后使用命名空间 http://www.w3.org/1999/xhtml
.
当然不清楚您如何 运行 XSLT 以及浏览器是否将 XSLT 结果视为 text/html 或 application/xml 或任何其他 XML 媒体类型,但修复名称空间将是识别 XHTML 元素并将其用于您期望的语义的第一步。