Html 加载样式表时出错:分析XSLT样式表失败。?
当我尝试在Firefox中加载xml时,会收到此错误消息;当我尝试在Safari和Google中加载xml时,会收到一个空白页面。我遗漏了一个错误吗? 我的造型要求:Html 加载样式表时出错:分析XSLT样式表失败。?,html,xml,xslt,transform,styling,Html,Xml,Xslt,Transform,Styling,当我尝试在Firefox中加载xml时,会收到此错误消息;当我尝试在Safari和Google中加载xml时,会收到一个空白页面。我遗漏了一个错误吗? 我的造型要求: 年份——粗体 标题——深蓝色字体,字重900 导演深绿色,粗体 男演员为蓝色,女演员为粉红色 字体——斜体和下划线 时间----深红色,粗体,下划线 XML: 1985 早餐俱乐部 约翰休斯 埃米利奥·埃斯特维兹 保罗葛里逊 安东尼·迈克尔·霍尔 贾德·纳尔逊 莫莉·林瓦尔德 艾莉希迪 喜剧、戏剧 97 1994 阿甘正传
- 年份——粗体
- 标题——深蓝色字体,字重900
- 导演深绿色,粗体
- 男演员为蓝色,女演员为粉红色
- 字体——斜体和下划线
- 时间----深红色,粗体,下划线
1985
早餐俱乐部
约翰休斯
埃米利奥·埃斯特维兹
保罗葛里逊
安东尼·迈克尔·霍尔
贾德·纳尔逊
莫莉·林瓦尔德
艾莉希迪
喜剧、戏剧
97
1994
阿甘正传
罗伯特·泽梅基斯
汤姆汉克斯
迈克尔蒂·威廉姆森
加里·西尼斯
海莉·乔尔·奥斯门特
萨利菲尔德
罗宾赖特
喜剧、戏剧、浪漫
142
XSLT:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<xsl:for-each select="streaming/movies">
<div>
<p><xsl:value-of select="year" style="font-weight:bold;"/></p>
<p><xsl:value-of select="title" style="color:DarkBlue; font-
weight:900;"/></p>
<p><xsl:value-of select="director" style="color:DarkGreen; font-
weight:bold;"/></p>
<p>Actors</p>
<ul>
<xsl:for-each select="streaming/movies/actors">
<xsl:if test="name() = 'male'">
<li><xsl:value-of select="male" style="color:blue;"/></li>
</xsl:if>
<xsl:if test="name() = 'female'">
<li><xsl:value-of select="male" style="color:pink;"/></li>
</xsl:if>
</xsl:for-each>
</ul>
<p><xsl:value-of select="type" style="text-decoration:underline;
font-style:italic;"/></p>
<p><xsl:value-of select="time" style="color:DarkRed; text-
decoration:underline; font-weight:bold;"/></p>
</div>
</xsl:for-each>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
演员
您所有的xsl:value of
语句似乎都有style
属性
<p>
<xsl:value-of select="year" style="font-weight:bold;"/>
</p>
哇,是的,你说得太对了。愚蠢的错误。然而,我对演员的看法仍然不正确。这与问题的内容无关。但这是因为你在做
。此时您的上下文已经在movies
节点上,因此您需要做的就是
事实上,您需要做
以获取actors
下的子节点,然后做
以输出子节点的实际文本值。您已经被告知错误是什么,但是问题的根本原因是您正在运行此样式表,而没有看到错误消息。一般来说,在浏览器中运行XSLT并不是最好的开发环境,但大多数浏览器都会在开发人员控制台中提供诊断功能,您需要熟悉如何找到它们。我还建议将其作为测试XSLT的工具,但不幸的是,这项服务目前无法提供…@TimC我真的认为你应该发布一个规范的答案。这项服务现已恢复。
<p>
<xsl:value-of select="year" style="font-weight:bold;"/>
</p>
<p style="font-weight:bold;">
<xsl:value-of select="year" />
</p>