我有两个非常不同的网站.在"Internet Explorer 8"浏览器模式下显示时,它们都有不同的错误!
单击地址栏旁边的"兼容性视图"按钮时,两个站点看起来都很棒.当我之后使用内置的"开发人员工具"查看"浏览器模式"和"文档节点"时,我还注意到"浏览器模式"是"IE8 Compat视图","文档模式"是"IE7标准" ".正如我所期待的那样.
然后我想强制"Internet Explore 8"进入"浏览器模式":"IE8 Compat视图",这样我的用户就不必单击地址栏旁边的"兼容性视图"按钮来获取他们真正需要的内容查看.
我能想到这样做的唯一方法是在标题内的标题下面插入一个元标记,如下所示:
<!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" lang="en">
<head>
<title>Test</title>
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
<link ... />
<script ...></script>
</head>
<body>
...
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
然后我重新加载网站和地址栏旁边的"兼容性视图"按钮消失.正如预期的那样.当我后来通过使用内置的"开发人员工具"查看"浏览器模式"和"文档节点"时,我突然看到了一些我真的没想到的东西.我希望"浏览器模式"为"IE8 Compat视图","文档节点"为"IE7标准",但"浏览器模式"为"IE8","文档模式"为"IE7标准",与在"Internet Explorer 8"浏览器模式下查看时相比,网站突然出现了一组新的错误!
令人非常沮丧的是为什么我不能强制使用"IE8 Compat view"浏览器模式而不是"Internet explore 7"或"Internet explore 8"浏览器模式?
我发现此代码强制使用www.
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.example.com$
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301]
Run Code Online (Sandbox Code Playgroud)
但我有许多指向同一目录的域名.所以我需要一个适用于多个域的代码版本.它必须在任何域上运行,是否可能?