【问题标题】:Doc-type Commented out in Internet Explorer 7Doc-type 在 Internet Explorer 7 中被注释掉
【发布时间】:2011-09-09 00:38:13
【问题描述】:

我注意到我正在使用的 CMS 有一些奇怪的行为。 Doctype 在 Internet Explorer 7 中被注释掉(IE9 在 IE7 标准模式下)见附图:

我认为这导致了我在使用 CSS 和 JavaScript (jQuery) 时遇到的其他一些错误。

有谁知道会触发这种行为的任何事情。

我正在使用的文档类型:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

【问题讨论】:

    标签: html internet-explorer doctype


    【解决方案1】:

    一旦 DOCTYPE 确定是使用 quirks(如 IE5.5)模式还是稍微标准(IE7 原生)模式,DOCTYPE 就不再真正引起浏览器的兴趣了。

    似乎 IE7(至少)然后将 doctype 插入到 DOM 中,就好像它是一个评论一样。

    这只是浏览器的工作方式。除非您让 JavaScript 遍历 DOM,否则它不太可能影响页面的工作方式。

    【讨论】:

    • 当你的意思是 javascript 遍历 dom 时,你的意思是使用 jQuery 作为选择器来做事。我怎么能解决这个问题。
    • @etoxin - 不是真的。我只是说有一个例外情况,您可以使用 javascript 代码假设文档节点的子节点是文档类型节点、可选的空格和 html 元素,因为这是它应该包含的内容。如果它实际上不是因为文档类型节点被注释节点替换,那么 javascript 可能会中断。但这只是理论上的可能性,而不是可能性。别担心。
    • 这是我上面的一个糟糕的回复。提问者特别想要了解它为什么会发生以及如何解决它,当人们在搜索引擎(即我)上寻找类似问题的答案时,这就是我们得到的。我的网站也出现了上述这种现象,导致一些CSS变得不适用,严重降低了网站的美观性。发布“不要担心它,因为它不太可能做任何事情”作为一个有效的答案是荒谬的。人们不应该回答,除非他们能回答问题。
    • @jk0 答案解释了为什么会发生。至于如何避免它,我认为答案意味着没有办法避免它发生,如果发生它应该没有任何相关性,因为通常文档类型与信息无关。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-02-10
    • 2014-02-12
    • 2016-07-14
    • 1970-01-01
    • 1970-01-01
    • 2012-06-07
    • 2016-06-11
    相关资源
    最近更新 更多