XSLT: 将XML转换为HTML - 无换行

3
我正在使用XSLT将XML文档转换为HTML文档。在我的XSLT中,我将缩进设置为“yes”。生成的HTML除了我特别插入新行字符的地方外,全部在一行上。为什么生成的HTML(XML)没有用新行和缩进进行格式化?
我正在使用Oxygen进行转换,并使用.Net 2.0引擎。

请您提供一个小的(但完整)示例吗?包括XML文档、XSLT代码和您所得到的结果。否则,我们将无法重现该问题,并且您不会获得任何明智的建议,只能是猜测。 - Dimitre Novatchev
1个回答

4

尝试

<xsl:output method="html"/>

作为顶级元素
编辑:请参见评论 method="html"的@indent默认值为"yes",而xml的默认值为"no"

切换到HTML输出方法成功了。我之前就设置过,但是我不喜欢它对某些元素的处理方式(具体记不清了)。我仍然不清楚为什么XML输出方法不会生成换行符。 - Josh M.
1
@Josh M.:这与你的问题无关。xml序列化方法也允许缩进。 - user357812
2
除了这对 OP 有用之外,您可能还想考虑其他人阅读此问题。xsl:output/@indent 对于 xml 方法来说,默认值为 no,而对于 html 方法来说,默认值为 yes - user357812
我并不惊讶你遇到了麻烦 - 控制XSLT输出是一门实验性的科学! - peter.murray.rust
如果我能的话,我会给你加上1000分... 你帮我省去了很多麻烦,谢谢 :) - Igor Popov

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接