我很困惑.我应该可以设置
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
Run Code Online (Sandbox Code Playgroud)
IE8和IE9应使用最新的渲染引擎呈现页面.但是,我刚刚对它进行了测试,如果在我们网站的其他地方启用了兼容模式,它将保留在我们的页面上,即使我们应该强制它不要.
怎么是你应该确保IE浏览器没有(甚至在企业内部网)使用兼容模式?
FWIW,我正在使用HTML5 DocType声明(<!doctype html>).
以下是该页面的前几行:
<!doctype html>
<!--[if lt IE 7 ]> <html lang="en" class="innerpage no-js ie6"> <![endif]-->
<!--[if IE 7 ]> <html lang="en" class="innerpage no-js ie7"> <![endif]-->
<!--[if IE 8 ]> <html lang="en" class="innerpage no-js ie8"> <![endif]-->
<!--[if (gte IE 9)|!(IE)]><!-->
<html lang="en" class="innerpage no-js">
<!--<![endif]-->
<head>
<meta charset="ISO-8859-1" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
Run Code Online (Sandbox Code Playgroud)
编辑:我刚刚了解到 IE8的默认设置是对Intranet站点使用IE7兼容模式.这会覆盖X-UA兼容的元标记吗?
我有这个<head>:
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
Run Code Online (Sandbox Code Playgroud)
它将强制IE的最新渲染模式,但兼容模式被认为是最后一个?
我的意思是,例如:在IE8中使用此代码,它会强制它使用IE8或IE8兼容模式吗?
正如问题所述.如果您的HTTP标头和文档上的元标记都有X-UA兼容,并且它们会发生冲突,哪一个受到IE的尊重?
这是使用CSS3 PIE的CSS
border: 1px solid #696;
padding: 60px 0;
text-align: center; width: 200px;
-webkit-border-radius: 12px;
-moz-border-radius: 12px;
border-radius: 12px;
background: #EEFF99;
behavior: url(/PIE.htc);
Run Code Online (Sandbox Code Playgroud)
特别
behavior: url(/PIE.htc);
Run Code Online (Sandbox Code Playgroud)
我的问题是这个PIE.htc是由所有浏览器下载还是仅在IE 7和8中下载?
我需要在IE7和8中显示圆角.因此我认为不是使用Modernizr而是为圆角编写另一个类和图像,CSS3 PIE将是很好的解决方案,因为无论何时我们将改变边框的颜色和厚度以及元素PIE.htc的高度将在IE7和8中呈现相同.但在Modernizr和图像的情况下,我们将不得不使用上传新图像,我们将不得不更改和上传新的更改.
而且因为我正在使用Modernizr,所以我无法加载条件注释,它将为每个浏览器加载,即使我不需要.所以我认为如果CSS3 PIE有利于灵活性,如果它只加载到IE7和8,那么在这种特殊情况下使用它会很好.