Css 不使用DOCTYPE就可以让IE7脱离quicks模式吗?

Css 不使用DOCTYPE就可以让IE7脱离quicks模式吗?,css,doctype,quirks-mode,Css,Doctype,Quirks Mode,在这种特殊情况下,我对DOCTYPE没有选择余地。我不能用。这是一种奇怪的情况,但事实就是这样 我们有一些CSS使用子选择器(“p>a>span”等)。这些在IE7中起作用,即使我们没有DOCTYPE…然后它们突然停止工作。我们所做的事情让IE7进入了怪癖模式,我不知道那是什么 我这样做: alert(document.compatMode); 它以“BackCompat”返回,所以我知道我们处于怪癖模式,这是有意义的,因为我们没有DOCTYPE。但我们一直都没有DOCTYPE,这是有效的,这

在这种特殊情况下,我对DOCTYPE没有选择余地。我不能用。这是一种奇怪的情况,但事实就是这样

我们有一些CSS使用子选择器(“p>a>span”等)。这些在IE7中起作用,即使我们没有DOCTYPE…然后它们突然停止工作。我们所做的事情让IE7进入了怪癖模式,我不知道那是什么

我这样做:

alert(document.compatMode);

它以“BackCompat”返回,所以我知道我们处于怪癖模式,这是有意义的,因为我们没有DOCTYPE。但我们一直都没有DOCTYPE,这是有效的,这告诉我还有其他方法可以让IE7摆脱怪癖模式。

嗯,也许这会有帮助

目前有两种在HTML文件中声明ISO值的方法。其中之一是将XML序言放在每个HTML文件的最上面一行,直接放在doctype声明之前。以这种方式声明意味着每个HTML文件的前三行可能如下所示:

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

(第一行是XML序言;第二行和第三行是doctype声明。)

通过在第1行没有doctype声明,InternetExplorer6将恢复到quirks模式(尽管上面的HTML代码完全有效)。但是,Internet Explorer 7不会恢复到quirks模式,而是以标准模式呈现网页。(如果您以前没有听说过这些术语,您可能希望阅读更多关于怪癖和严格模式的内容。)


发件人:

嗯,也许这会有帮助

目前有两种在HTML文件中声明ISO值的方法。其中之一是将XML序言放在每个HTML文件的最上面一行,直接放在doctype声明之前。以这种方式声明意味着每个HTML文件的前三行可能如下所示:

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

(第一行是XML序言;第二行和第三行是doctype声明。)

通过在第1行没有doctype声明,InternetExplorer6将恢复到quirks模式(尽管上面的HTML代码完全有效)。但是,Internet Explorer 7不会恢复到quirks模式,而是以标准模式呈现网页。(如果您以前没有听说过这些术语,您可能希望阅读更多关于怪癖和严格模式的内容。)


from:

您可以通过将web服务器中的
X-UA-Compatible
头设置为
IE=EmulateIE7
并将其作为HTTP头的一部分发送来强制IE7兼容模式,而无需使用
DOCTYPE
。有关如何在IIS或Apache中执行此操作的信息,请参阅。

通过将web服务器中的
X-UA-Compatible
头设置为
IE=EmulateIE7
,并将其作为HTTP头的一部分发送,可以在不使用
DOCTYPE
的情况下强制IE7兼容模式。有关如何在IIS或Apache中执行此操作的信息,请参阅。

不,我的问题是我们正在与第三方系统集成,我们向页面中注入代码的唯一方法是通过Javascript“document.write”。因此,我不能影响外部页面中的任何内容,而且他们也不使用DOCTYPE。我没有办法影响HTML之外的任何东西,我正在把它放到一个特定的DIV中。嗯,这很奇怪,如果是这样的话,它不应该恢复到怪癖模式。因为没有doctype。也许你应该回溯你的最新更改来触发它不,我的问题是我们正在与第三方系统集成,我们向页面中注入代码的唯一方法是通过Javascript“document.write”。所以我不能影响外部页面中的任何内容,而且他们也不使用DOCTYPE。我没有办法影响HTML之外的任何东西,我正在把它放到一个特定的DIV中。嗯,这很奇怪,如果是这样的话,它不应该恢复到怪癖模式。因为没有doctype。也许你应该回溯你最近的改变来触发它