【问题标题】:XML Pretty Printer Missing 2 Key Edge CasesXML Pretty Printer 缺少 2 个关键边缘案例
【发布时间】:2010-04-12 07:32:10
【问题描述】:

使用this blog 上的this xslt file 使用 Nokogiri 漂亮地打印 xml,几乎 一切正常,但到了我不能将它用于 HTML 的地步。

首先,如果一个节点是空的,它将它变成一个自闭节点,所以:

<textarea></textarea>

转换成

<textarea/>

但这会在渲染时弄乱 html 树。

其次,如果节点只有文本,文本不分页,关闭节点也不分页,所以:

<li>
 <label>some text</label>
</li>

变成:

<li>
 <label>some text
</label>
</li>

...但理想情况下是:

<li>
 <label>
  some text
 </label>
</li>

有没有人知道 XSLT 专家的快速解决方法?

【问题讨论】:

    标签: xml ruby xslt nokogiri pretty-print


    【解决方案1】:

    修改 xsl:output 元素以表明您想要 HTML 输出和缩进:

    <xsl:output method="html" indent="yes" encoding="ISO-8859-1"/>
    

    【讨论】:

      【解决方案2】:

      如果您只是尝试打印输出而不关心 XSL 提供的任何进一步转换,那么只需使用 http://prettydiff.com/?m=beautify

      您还可以使用 HTML 参数http://prettydiff.com/?m=beautify&html 将某些标签视为单例,即使它们看起来像开始标签,例如
      而不是

      【讨论】:

        猜你喜欢
        • 2010-10-28
        • 1970-01-01
        • 2015-07-07
        • 1970-01-01
        • 2012-09-16
        • 2016-03-30
        • 2012-03-31
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多