谷歌浏览器 - 通过超链接打开一个xml文件显示xml作为常规文本

时间:2011-05-11 12:39:36

标签: xml file browser google-chrome hyperlink

我想在iframe中显示一个xml文件。 它在firefox中工作正常,但是在chrome中将xml显示为文本。

所以我想检查这是否是一般性问题。 例如: 如果我使用View an XML food menu中的http://www.w3schools.com/xml/xml_examples.asp链接,那么我会将xml显示为文本文件。

如果我右键单击该链接并选择在新选项卡中打开,它将显示xml应该如此。 或者如果我打开一个新标签并将网址http://www.w3schools.com/xml/simple.xml显示为xml文件。

如果您按下鼠标右键并选择“在新标签页中打开”,它将显示xml。

我认为无论是什么导致这个问题都会导致我面临的问题。 所以我的问题是:

  1. 是什么原因引起的?
  2. 有解决这个问题的方法吗?
  3. 这是Chrome中的错误吗?
  4. 感谢。

    chrome版本为11.0.696.65

    操作系统:windows xp,我也在Windows 7中检查了这个

3 个答案:

答案 0 :(得分:1)

我认为问题是xml没有引用样式表。第一次xml确实引用样式表的其他链接打开正常。也许添加一个最小的样式表将为您解决问题?

答案 1 :(得分:1)

对我来说,这是绝对 Google Chrome错误。尝试使用右键单击该链接并选择“在新选项卡中打开链接”或“在新窗口中打开链接”以查看漂亮的打印XML。

enter image description here

锚元素中有target="_blank"属性,导致该问题:

<a target="_blank" href="simple.xml">View an XML food menu</a>

查看另一个网站http://www.xmlfiles.com/examples/。没有target="_blank",链接效果很好。

您可以使用Inspect Element→Edit as HTML选项删除该属性target="_blank",之后也可以很好地打印XML。

enter image description here

最后我找到了Chromium Issue 84128(据报道26/5/2011,版本11.0.696.71)。

您无需添加任何明确的XSLT样式表。这不是这里的情况。如果没有应用样式表,则浏览器会隐式使用其内置的默认变体。

编辑:

我下载了 Google Chrome 12测试版(版本12.0.742.77 beta-m)beta-m,此处错误已解决

Comment 93 by project member vse...@chromium.org, May 3, 2011 
The target="_blank" problem is already fixed in Chrome 12.

(来自http://code.google.com/p/chromium/issues/detail?id=434

答案 2 :(得分:0)

据我所知,没有Chrome错误。 Chrome只是不对XML文档应用任何样式。

要解决此问题,请将样式表添加到XML文件中,如此

<?xml-stylesheet type="text/css" href="/Styles/olg_rss.css" ?>

它应该出现在版本+编码

之后
<?xml version="1.0" encoding="ISO-8859-1" ?>

这是我创建的一个stylesheet

rss {font-family:Arial, Helvetica, sans-serif;}

channel title {display:block; 
    padding:1em; color:#FFF; border-bottom:1px solid black; 
    font-weight:bold;
    font-size:140%; background-color:#4483C7;}

channel description {display:block; float:left; 
    font-size:130%; margin:1em;}

channel item {border:1px solid #4483c7;clear:both; 
    display:block; padding:0.5em; margin:1em;}

channel item title {background-color:#4483c7; 
    border-bottom-width:0; color:#FFF; display:block; 
    font-size:110%; font-weight:bold; margin:0; padding:0.2em;}

channel item description {display: block; float:none; 
    margin:0; text-align: left; padding:0.2em 0.5em 0.4em; 
    color: black; font-size:100%; font-weight:normal;}

channel item link {color:#666; display:block; font-size:86%; 
    padding:0 0.5em;}