meta元素有4个属性:name、http-equiv、content、charset.meta标签经过name属性来表述页面文档的元信息,经过http-equiv属性设置http请求指令,经过charset设置页面的字符编码。按照属性设置分类,meta能够分为三类:html
name属性和content属性组合,构成名称/值对,用于描述网站信息.前端
标准的meta名称包括application-name、author、description、generator等。 示例代码:html5
<meta name="keywords" content="british,typeface,font,fonts"/>
其中keywords和description这两个名称的使用率最高,是搜索引擎优化的主要手段之一,推荐读者使用。chrome
http-equiv属性和content属性组合,设置特定的http指令;浏览器
其中content-type、default-style和refresh已经肯定,content-language和set-cookie还未正式肯定.cookie
此类型meta应该谨慎使用。不推荐使用<meta http-equiv="refresh" content="300"/>,某些搜索引擎遇到此meta时会中止解析 页面剩余的部分。<meta http-equiv="default-style">在实际的场景中不多使用app
charset属性,设置页面字符编码。ide
此属性提供了保存和传输文档的编码格式。工具
<meta charset="utf-8">
等价于学习
<meta http-equiv='Content-Type' content='Type=text/html; charset=utf-8'>
可是第一种形式更简洁好记,而且获得了全部主流浏览器的支持,全部不存在浏览器兼容问题。为 了让浏览器能准确识别编码格式,务必在<title>标签以前设置charset,保证标题能正确显示。
除了W3C定义的规范中定义的这些meta以外,还有大量的自定义meta类型。这些meta类型主要是由互联网公司或者浏览器厂商为了实现特定的功能而定制的。这些自定义的meta不能经过W3C提供的标准校验,但并非说这些meta不标准。介绍一些经常使用的meta
设置IE浏览器的兼容模式
从IE8浏览器开始支持一种设置页面兼容模式的meta类型,示例代码以下:
<meta http-equiv="X-UA-Compatible" content="IE=8"/> 专门创建的学习Q-q-u-n ⑦⑧④-⑦⑧③-零①② 分享学习方法和须要注意的小细节,互相交流学习,不停更新最新的教程和学习技巧(从零基础开始到WEB前端项目实战教程,学习工具,全栈开发学习路线以及规划)
根据html规范,浏览器是按照页面开头定义的文档类型来解析页面的。例如,使用html5的文档类型声明:
<!DOCTYPE html>
IE就会以标准模式解析HTML文档。可是某些已有页面因为各类缘由不能在最新标准模式下正确显示,只支持特定的标准。针对这种状况,IE浏览器提供了一种兼容的方案,经过设置X-UA-Compatible指定页面在IE浏览器中渲染时执行的标准。
此外还有一种很常见的设置值,即:
<meta http-equiv="X-UA-Compatible" content="chrome=1"/>
IE定义的meta为何会出现chrome呢?其实设置为chrome=1时,则会在IE9及如下浏览器中激活Chrome Frame,强制IE使用Chrome Frame渲染页面。