我正在渲染XMLDom对象,并面临一个非常严重的问题。一个问题是:
我想一有机会就突破底线
" "
和
"¬"
.
在IE8中:正确渲染
“ ”
(新线)和看跌
<br>
标记已找到的位置
“ ”
。但在IE9中,它将每个单词分解成新的行,无论它在哪里找到
“ ”
和空白(单个空间)
<xsl:template name="for-each-character">
<xsl:param name="data"/>
<xsl:variable name="lf"><xsl:text> </xsl:text></xsl:variable>
<xsl:variable name="sr"><xsl:text>¬</xsl:text></xsl:variable>
<xsl:if test="string-length($data) > 0">
<xsl:value-of select="substring($data,1,1)"/>
<xsl:if test="substring($data,1,1) = $sr or substring($data,1,1) = $lf">
<br/>
</xsl:if>
<xsl:call-template name="for-each-character">
<xsl:with-param name="data" select="substring($data,2)"/>
</xsl:call-template>
</xsl:if>
</xsl:template>
IE8中的输出:
您好,这是一条新线路上的短信
规格后字符
IE9中的输出:
你好
这
是
……等等
预期输出应为(在IE8和IE9中(或>=IE9):
您好,这是一条新线路上的短信
规格后字符
上面的模板在Chrome和IE8中正常工作,但在IE9中产生了问题。
如有任何进一步的协助,我们将不胜感激。