Html 保留元素内的空间并删除元素之间的空白(空行)XSLT、CSS
一直在尝试使用输出html方法转换xml文档,以便在浏览器中使用带有CSS的xsl样式表显示。是否要显示以下代码Html 保留元素内的空间并删除元素之间的空白(空行)XSLT、CSS,html,css,xml,xslt,Html,Css,Xml,Xslt,一直在尝试使用输出html方法转换xml文档,以便在浏览器中使用带有CSS的xsl样式表显示。是否要显示以下代码 <paragraph> <content>Source A</content> </paragraph> <paragraph> <content>Color Yellow </content> <
<paragraph>
<content>Source A</content>
</paragraph>
<paragraph>
<content>Color Yellow </content>
</paragraph>
作为
源和A之间保留了空间,颜色和黄色之间保留了空间,但行之间删除了空白行。我可以这样做,例如,使用pre节点包装内容节点以保留元素中的空间,并使用
<p>
{ margin:0}
移除行之间的空白。然而,我无法同时完成这两项任务。使用了各种选项,如whitespace:pre、xsl:preserve space和许多其他组合,但都没有成功。
谢谢XSLT保留空白。默认情况下,HTML不会显示它 使用此CSS指令:
p {
white-space: pre;
}
XSLT是这样的:
<xsl:template match="paragraph">
<p><xsl:value-of select="content" /></p>
</xsl:template>
一般答案如下,对于更专业的答案,我们需要查看您的XSLT代码。它似乎将所有行包装到一个块中,但我们希望保持行的不同,只是中间没有空白行。它也不会在元素中保留空间。我没有提到的一点是,样式表和xml文档受CDA规范的约束,所以这里可能会考虑到这一点。谢谢,我不知道CDA的规格是什么;但我知道XSLT不会触及源文档中的空白,除非您明确指示它。另外,正如我上面所说的,要获得更具体的答案,您需要共享您的XSLT代码。样式表在这里提供:Thankstripped to The bare minimum,但在其他方面保持不变您的XSLT与我的建议完美配合:。所以,除非我们谈论的不是同一件事…感谢您提供了一个工作测试接口。我工作得很好,仍然不适用于非压缩样式表,也不确定它是否也能完成边距为0的任务,但很有帮助。
p {
white-space: pre;
}
<xsl:template match="paragraph">
<p><xsl:value-of select="content" /></p>
</xsl:template>