我已經看到此資源link text,但我仍然遇到使用MSXML分析器生成有效XHTML文檔的麻煩。XSLT轉換以生成有效的XHTML:命名空間問題
我在輸入下列文件:
<?xml version="1.0" encoding="UTF-8" ?>
- <html xml:lang="it" xmlns="http://www.w3.org/1999/xhtml">
- <head xmlns="">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Bla bla bla</title>
<link rel="stylesheet" type="text/css" media="screen" href="css/bla.css" />
</head>
- <body xmlns="" style="background-color:#DFDFDF;left-margin:0;margin-top:0">
....
</body>
</html>
其中討厭的xmlns =「」產生,因爲我已插入指令:
parserInstance.documentElement.setAttribute "xmlns", "http://www.w3.org/1999/xhtml"
創建相變前的輸入文檔時
。
的XSLT進口我使用轉型以抓住html元素
<xsl:stylesheet
version="1.0"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns="http://www.w3.org/1999/xhtml"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
exclude-result-prefixes="xhtml xsl"
>
<xsl:import href="_lib.xsl"/>
<xsl:import href="_standard.xsl"/>
和_standard.xsl內我有使rerlevant轉換的代碼:
<xsl:template match="html">
<xsl:copy>
<xsl:copy-of select="@*" />
<xsl:apply-templates select="head" />
<xsl:apply-templates select="body" />
</xsl:copy>
仍我在html標記中沒有所需的xmlns:
<html xml:lang="it">
,我仍然在HTML代碼intersparsed討厭的xmlns:
<h1 xmlns="http://www.w3.org/1999/xhtml">BLA BLA</h1>
當我收到錯了嗎?
請注意:我必須用拉模型用於轉化,我不能使用恆等變換
完成,但輸出文檔中的某些html元素仍存在xmlns屬性。 – Daniel 2010-03-09 13:55:45
發佈儘可能少但完整的XML輸入示例和您的樣式表讓我們能夠重現問題,然後我相信我們可以解決它。恐怕「某些html元素仍然存在xmlns屬性」不允許我決定它們分別來自哪裏,如何解決這些問題,我需要查看代碼。 – 2010-03-09 14:28:53