实际上我在 IE 中遇到了一个不在 Intranet 上的网站问题,并且“始终以兼容模式显示页面未激活”但它有时仍然以怪癖模式打开,尽管添加了
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
我有红色,我可以在 HTTP header 或 htaccess 中发送此兼容性命令
我的问题是,我搜索了如何发送 HTTP header ,但实际上没有找到任何线索,顺便说一句,我是一名 PHP 开发人员,以防万一需要此信息。
如果有人能向我提供需要添加的内容(对于两者,或至少对于一个)以及如何/在何处添加它,我将非常感激,我一直在寻找整个星期并且找到修复非常紧迫这么快!
这种将它作为 HTTP header 作为页面第一行发送的方式是否正确?
<?php
header('X-UA-Compatible: IE=edge');
?>
(我刚找到)
我真的很感激能提供任何帮助,我在此先表示感谢。
最佳答案
正如您正确指出的,可以在 php 中设置 header :
<?php header('X-UA-Compatible: IE=edge,chrome=1');
它也可以像这样在 .htaccess
中设置:
<IfModule mod_headers.c>
Header set X-UA-Compatible "IE=Edge,chrome=1"
# mod_headers can't match by content-type, but we don't want to send this header on *everything*...
<FilesMatch "\.(appcache|crx|css|eot|gif|htc|ico|jpe?g|js|m4a|m4v|manifest|mp4|oex|oga|ogg|ogv|otf|pdf|png|safariextz|svg|svgz|ttf|vcf|webm|webp|woff|xml|xpi)$">
Header unset X-UA-Compatible
</FilesMatch>
</IfModule>
(从 HTML5 Boilerplate 模板复制)
但是,如果您正在设置这些 header 并发现 IE 仍然默认为 quirks-mode,那么我倾向于建议还有其他东西在起作用。您是否确保您的页面包含有效的 doctype
?值得注意的是,不是 HTML 4.01 风格。
关于php - X-UA-与 HTTP header 的兼容性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15443998/