首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么Opera将我的网页解析为XML?

为什么Opera将我的网页解析为XML?
EN

Stack Overflow用户
提问于 2010-05-04 15:49:48
回答 9查看 2.7K关注 0票数 7

我刚刚试着在Opera (10.50版)中查看我的网站http://www.logmytime.de/,它给了我一个"xml解析失败的错误“,并且拒绝显示网页。

我可以选择“将文档转换为HTML”,这样页面就能正常工作,但这很难解决我的问题。

奇怪的是,在设置HTML (而不是XTHML) doctype之后仍然会发生错误:

代码语言:javascript
复制
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
          "http://www.w3.org/TR/html4/loose.dtd">

我检查了浏览器的源输出,以确保我在Firebug中甚至查看了同一个网页时没有犯任何错误,它显示了一个内容类型的text/html;。

那么,为什么Opera仍然试图将我的网页解析为XML呢?

谢谢,

禤浩焯

编辑:只是为了澄清:我不是在问我网页上的错误是什么。我理解为什么这不是有效的XHTML。然而,我也在使用javascript微模板引擎,它的模板从来都不是有效的XML,这就是为什么我需要浏览器将我的整个网站解析为HTML,而不是XHTML。为了演示这一点,我刚刚在网页中插入了一个示例模板。

代码语言:javascript
复制
<script type="text/html" id="StopWatchTemplate" > 

<h1><a href="#" onclick="TimeEntriesList.EditTimeEntry('<#=timeEntryID#>')"><#=currentlyRunning?"Aktueller":"Letzter"#> Stoppuhr-Zeiteintrag</a></h1>
<%-- Stoppuhr - Ende--%>

</script>

在Opera中打开页面时,您可以看到模板现在会产生XML解析错误,即使页面的doctype仍然是HTML。

编辑2::为了让这一点更清楚:我不是在问为什么我的网页无效。我的问题是,为什么Opera试图将其解析为XHTML,尽管使用HTML文档类型。

Edit3::请不要发布更多的答案,我已经找到了原因,并在下面记录在案它。

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2010-05-04 22:47:29

如果其他人有同样的问题:按照DeveloperArt的建议,可以在页面元素中使用一个简单的ContentType="text/html“属性来修复它。

编辑:这个问题实际上是由我在web项目中使用的mobile.Browser文件的错误引起的。以上的解决办法是可行的,但在我的情况下,这并不是必要的。有关更多详细信息,请参阅这个答案

票数 5
EN

Stack Overflow用户

发布于 2010-05-04 15:51:45

您有两次指定的"class“属性。

来自良好格式约束:唯一的Att Spec

属性名称不能在同一个开始标记或空元素标记中出现不止一次。

票数 7
EN

Stack Overflow用户

发布于 2010-05-07 12:25:45

您得到了正确的答案(HTTP内容类型的标题强制执行XML解析),而且它似乎是固定的。我只想补充一个小小的提示,说明你如何从Opera内部找出问题所在。有两种可能的方式:

1)信息面板

默认情况下,这是不可见的,但是如果您打开左边的面板栏(如果没有看到,请按F4键切换),然后单击底部的小加号,您可以在菜单中启用"Info“。

信息面板显示当前打开的页面的一些分类信息,包括编码和MIME类型。

2)歌剧蜻蜓

按Ctrl-Shift-I打开开发工具(或浏览菜单到tools > Advanced > Opera Dragonfly)

转到“网络”选项卡,然后重新加载站点。您将看到请求,并可以查看标头。如果将此与Firebug的相应信息进行比较,您将看到内容类型标头的差异。(这里还将看到Opera发送一个包含"application/xhtml+xml“的”接受“标题。这意味着"Hi server,如果您的文件是真实的XHTML格式,我会理解的很好“。也许您的服务器端框架看到了这个标题,并且错误地使用了XHTML内容类型,即使内容无效?)

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2766820

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档