为什么xslt转换器忽略<link /> - 标签的内容

时间:2011-01-03 00:19:32

标签: xslt

当我把这个例子放在我的xslt-stylesheet中时:

<link><xsl:text>test</xsl:text></link>

或者这个:

<link>test</link>

我得到以下结果:

<link xmlns=""></link>

然而:

<linkb>test</linkb>

渲染以下结果:

<linkb xmlns="">test</linkb>

xslt的其余部分似乎没有任何区别,我已经在几个不同的空xslt-stylesheets中尝试过它

这个问题出现在后端转换(php)以及chrome浏览器中的frontend-konversion(但不在Firefox中)

错误示例: dev.resihop.nu (在页脚正上方)

2 个答案:

答案 0 :(得分:2)

这不是一个真正的XSLT问题。

<link xmlns="">

由Chrome呈现,问题在于内置浏览器CSS:

link {
    display: none;
    }

您可以通过Chrome开发人员工具栏查看此内容(只需按Ctrl-Shift-I即可)。我认为这也是没有呈现标签内容的原因。我猜Chrome只是不喜欢带有这些名字的元素并专门对待它们。

修改即可。实际上我明白了,为什么。由于link标记,我们在head部分中都使用了该标记。

实际上,避免像你这样的问题的最简单方法是选择任何合适的(X)HTML文档类型,并根据该文档类型使代码有效。

答案 1 :(得分:0)

您可能没有声明一个默认为HTML的输出方法。

尝试:

<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>

祝你好运!