【问题标题】:How to view doctype in generated source code如何在生成的源代码中查看 doctype
【发布时间】:2010-05-06 20:45:25
【问题描述】:

我正在对 xml 文件使用 XSL 转换来创建 xml 文档。我遇到的问题是,当我查看生成的源(转换后的源)时,我看不到 html 的 DOCTYPE 属性,所以我不知道它是否被正确发出。

有没有办法这样查看doctype?

【问题讨论】:

    标签: xml xslt xhtml


    【解决方案1】:

    我最近没有尝试过,但我相信xsl:output 可以用于此,请参阅this tutorial 以及那里的各种属性下的选项。

    【讨论】:

      【解决方案2】:

      了解<xsl:output>doctype-systemdoctype-public 属性。

      【讨论】:

      • 我一遍又一遍地发现这个,但它没有将它发送到 html 页面,也没有对渲染进行必要的调整。所以我真的很茫然。
      【解决方案3】:

      当您自己序列化转换结果(文档树)时,通常会发生这种情况。您如何运行转换并获得其结果?

      【讨论】:

        【解决方案4】:

        如果你有过渡性xhtml,你应该包括以下xsl:output标签:

        <?xml version="1.0" encoding="UTF-8"?>
        <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
          <xsl:output method="html" 
            doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" 
            doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" />
        
          <xsl:template match="/">
            <html>
               <head><title>Test</title></head>
               <body></body>
            </html>
          </xsl:template>
        </xsl:stylesheet>
        

        此示例产生以下输出(带有任意输入 XML):

        <!DOCTYPE html
          PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
        <html>
           <head>
              <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
              <title>Test</title>
           </head>
           <body></body>
        </html>
        

        【讨论】:

          【解决方案5】:

          我必须有一个奇怪的系统,在我的情况下,我实际上只需要使用 doctype 作为包含文件。我尝试了这些建议,但由于某种原因它没有正确呈现 html。这是他们在这里工作的一种奇怪的系统,我不确定它是如何工作的。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2011-08-23
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2017-10-27
            • 2013-09-03
            相关资源
            最近更新 更多