学习typecho的默认主题,才看到header.php文件的第六行代码,就被这样一句代码弄懵了。http-equiv属性提供了content属性的信息/值的HTTP头,也就是说,这东西是成对使用的,使用http-equiv属性可用于模拟一个HTTP响应头。掉坑代码如下:
<meta http-equiv="X-UA-Compatible" content="IE=edge">
http-equiv属性
refresh
使用该refresh值,您可以定义要重新加载文档的时间段。在下面的示例中,文档将设置为每30秒刷新一次;
<meta http-equiv="refresh" content="30">
content-security-policy
该content-security-policy值允许您定义允许浏览器加载哪些源,下面的示例允许从当前域以及example.com;
<meta http-equiv="content-security-policy" content="default-src 'self' *.example.com">
default-style
该default-style值指定要使用的首选样式表是什么,content 属性的值必须与<link>同一文档中元素的值匹配,才能使其有效;
<meta http-equiv="default-style" content="/style.css">
content-type
规定文档的字符编码,在html5中使用http-equiv已经不是规定HTML文档的字符编码的唯一方式。
HTML 4.01:
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
HTML5:
<meta charset="UTF-8">
http-equiv也称为等效的 HTTP 响应标头,对于那些无法访问源服务器的配置文件但仍需要进行某些修改的人可能很有用。尽管并非所有值都像以前一样有效,但在某些情况下使用此属性仍然很有用。此外,所有主要浏览器都支持此属性,因此无论您的客户端使用哪种浏览器,内容值都应该是可执行的,因为该值没有过时。
关于X-UA-Compatible
X-UA-Compatible值 | 文档模式 |
---|---|
IE=5 | 怪异模式 |
IE=7 | IE7模式 |
IE=8 | IE8模式 |
IE=9 | IE9模式 |
IE=10 | IE10模式 |
IE=11 | IE11模式 |
IE=edge | 以上代码告诉IE浏览器,IE8/9及以后的版本都会以最高版本IE来渲染页面 |
IE=EmulateIE7 | IE7 模式(如果存在有效<!DOCTYPE>声明)怪异模式 (otherwise) |
IE=EmulateIE8 | IE8 模式(如果存在有效<!DOCTYPE>声明) 怪异模式 (otherwise) |
IE=EmulateIE9 | IE9 模式(如果存在有效<!DOCTYPE>声明)怪异模式 (otherwise) |
IE=EmulateIE10 | IE10 模式(如果存在有效<!DOCTYPE>声明)怪异模式 (otherwise) |
IE=EmulateIE11 | IE11模式(如果存在有效<!DOCTYPE>声明)怪异模式 (otherwise) |
综合来看,这句代码的含义是,ie浏览器模式下用最高版本来渲染页面。
<meta http-equiv="X-UA-Compatible" content="IE=edge">