2013-07-13 98 views
2

我想將一個非常簡單的xml轉換爲html。實際上,xml文件是空白的。xsltproc轉換爲html刪除空元素的關閉標籤

<?xml-stylesheet type="text/xsl" href="test.xsl" ?> 
<myElement> 
</myElement> 

這裏是我的XSL

<xsl:stylesheet version='1.0' xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
<xsl:output method="html" version="4.0" /> 

<xsl:template match="/"> 
    <html> 
    <head> 
     <title>How you doing?</title> 
    </head> 
    <body> 
    <br /> 
    <br /> 

    </body> 
    </html> 
</xsl:template> 
</xsl:stylesheet> 

這裏是xsltproc的輸出。請注意,br標籤不再關閉。任何人有任何想法,爲什麼發生這種情況?

[email protected]:~/src/tmp$ xsltproc test.xsl test.xml 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"    "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>How you doing?</title> 
</head> 
<body> 
<br><br> 
</body> 
</html> 

回答

3

我想通了。

<xsl:output method="html" version="4.0" /> 

非閉合標籤實際上是有效的html,但不是xhtml。所以這是按預期工作的。