网页在IE6.0中显示正常,在IE7.0 上显示异常在主页index.htm 的<iframe>调用datashow.php在datashow.php中利用echo输出一个xml文本:
<?xml version="1.0" encoding="gb2312"?><?xml-stylesheet type="text/xsl" href="all.xsl"?>
<xdata><theader></theader>
<tbody>
<item id="0"><id>532</id><ip>192.168.17.231</ip><dip>192.168.11.202</dip><timestamp>2007-04-26 09:52:16</timestamp><url><![CDATA[192.168.11.202 ]]></url><site><![CDATA[192.168.11.202 ]]></site><title><![CDATA[No Title ]]></title><filepath></filepath><visited>1</visited><method>GET</method></item>
</tbody>
</xdata>
输出在iframe中的结果是
532192.168.17.231192.168.11.2022007-04-26 09:52:161GET19192.168.11.2025100007FHTTPGET
看起来好像是ie7忽略了所有<>里面的标志而直接将数据显示在页面上。
然而如果将此页面的内容另存为1.xml,并把all.xsl放在1.xml的目录下,再用ie7查看1.xml的内容,所有的样式都有效,显示正常。这是什么原因呢?有谁碰到过类似的问题吗?

解决方案 »

  1.   

    没有遇到过,如果你只从浏览器里面输入 datashow.php 而不通过index 的 iframe 调用, 看看显示是否正常,如果正常的话,说明 IE7中的 iframe 和IE6 的iframe的处理方式不同。
    可能你有些语法不太准确,好好检查一下 xsl 文件吧。IE7中的语法检查要比6高多了。
      

  2.   

    这个问题应该是HTTP响应的Content-Type不对引起的,
    试试再最开始的地方加上
    header('Content-Type: application/xml');
      

  3.   

    建议你用firefox处理这个问题 IE以前经常遇到 可能是特殊字符引起的 好好检查一下:)
      

  4.   

    用firefox,也就是火狐...IE不支持