1 概述
meta
标签提供关于HTML
文档的元数据。元数据不会显示在页面上,但是对于机器是可读的。它可用于浏览器(如何显示内容或重新加载页面),搜索引擎(关键词),或其他web
服务。 —— W3School
1.1 必要属性
属性 | 值 | 描述 |
---|---|---|
content | some text | 定义与http-equiv或name属性相关的元信息 |
1.2 可选属性
属性 | 值 | 描述 |
---|---|---|
http-equiv | content-type / expire / refresh / set-cookie | 把content属性关联到HTTP头部。 |
name | author / description / keywords / generator / revised / others | 把 content 属性关联到一个名称。 |
content | some text | 定义用于翻译 content 属性值的格式。 |
2 详细解释
2.1 页面编码
一般html
源代码和css
文件编码要统一,如果不统一会导致CSS hack
,页面乱码网页页面排版乱等兼容问题。这个元数据是必须要被声明的。
国内常用的流行的有utf-8
、gb2312
这两种。一般这两种类型就能满足国内网页编码需求。当然程序和数据库中也会用到这两种编码类型来处理网页和存储数据类型。
1 | <!-- html4中声明编码格式 --> |
2.2 浏览器默认渲染版本
1 | <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> |
2.3 viewport
能优化移动浏览器的显示,如果不是响应式网站
,不要使用initial-scale
或者禁用缩放。
大部分4.7-5寸
设备的viewport
宽设为360px
;5.5寸
设备设为400px
;iphone6
设为375px
;ipone6 plus
设为414px
。
1 |
|
属性 | 值 |
---|---|
width | 宽度(数值 / device-width),范围从200 到10,000,默认为980 像素 |
height | 高度(数值 / device-height),范围从223 到10,000 |
initial-scale | 初始的缩放比例,范围从>0 到10 |
minimum-scale | 允许用户缩放到的最小比例 |
maximum-scale | 允许用户缩放到的最大比例 |
user-scalable | 用户是否可以手动缩 (no,yes) |
minimal-ui | 可以在页面加载时最小化上下状态栏。(已弃用) |
注意,很多人使用initial-scale=1
到非响应式网站上,这会让网站以100%
宽度渲染,用户需要手动移动页面或者缩放。如果将initial-scale=1
和user-scalable=no
或maximum-scale=1
一起设置,则用户将不能放大/缩小网页来看到全部的内容。
2.4 页面作者
每个网页都应有一个不超过 150 个字符且能准确反映描述页面作者标签。
1 | <meta name="author" content="author name" /> |
2.5 页面关键词
每个网页应具有描述该网页内容的一组唯一的关键字。
使用人们可能会搜索,并准确描述网页上所提供信息的描述性和代表性关键字及短语。
标记内容太短,则搜索引擎可能不会认为这些内容相关,但是另外标记不应超过 874 个字符。
1 | <meta name="keywords" content="your tags" /> |
2.6 页面描述
每个网页都应有一个不超过 150 个字符且能准确反映网页内容的描述标签。
1 | <meta name="description" content="150 words" /> |
2.7 页面创建时间
指的是文件的创建时间,简单说就是指这个页面写第一行代码的时间。
1 | <meta name="build" content="2017-12-07" /> |
2.8 页面版权
copyright
用于定义网页版权,copyright
出现在name
属性中,使用content
属性提供网页的版权
1 | <meta name="copyright" content="your copyright"> |
2.9 页面生成工具
指的是文件是用什么来生成的,简单说就是页面编辑器是什么。
1 | <meta name="generator" content="your editor"> |
2.10 网络应用名称
定义正运行在该网页上的网络应用名称
1 | <meta name="application-name" content="your application name"> |
2.11 页面创建者
以自由格式定义文档创建者的名字。请注意,它可以是该机构的名称。如果不止一个,应该使用几个<meta>
元素;
1 | <meta name="creator" content="your company"> |
2.12 页面发布者
发布者,以自由格式定义文档的发布者的名称。请注意,它可以是该机构的名称;
1 | <meta name="publisher" content="your company"> |
2.13 搜索引擎索引方式
robotterms
是一组使用逗号(,)分割的值,通常有如下几种取值:none
,noindex
,nofollow
,all
,index
和follow
。确保正确使用nofollow
和noindex
属性值。
1 | <meta name="robots" content="index,follow" /> |
Value | Description | Used by |
---|---|---|
all | 文件将被检索,且页面上的链接可以被查询 | All |
index | 文件将被检索 | All |
noindex | 文件将不被检索 | All |
follow | 页面上的链接可以被查询 | All |
nofollow | 页面上的链接不可以被查询 | All |
noodp | 防止使用“Open Directory Project”说明,如果有的话,作为搜索引擎结果页面中的描述 | Google, Yahoo, Bing |
noarchive | 防止搜索引擎缓存页面的内容 | Google, Yahoo |
nosnippet | 防止在搜索引擎结果页面中显示页面的任何描述 | |
noimageindex | 防止此页面显示为索引图像的引用页面 | |
noydir | 防止此页面显示为索引图像的引用页面 | Yahoo |
nocache | 防止搜索引擎缓存页面的内容 | Bing |
2.14 页面重定向和刷新
content
内的数字代表时间(秒),既多少时间后刷新。如果加url
,则会重定向到指定网页(搜索引擎能够自动检测,也很容易被引擎视作误导而受到惩罚)。
1 | <meta http-equiv="refresh" content="0;url=" /> |
2.15 预定义的样式表
content
属性的值必须匹配同一文档中的一个 link
元素上的 title
属性的值,或者必须匹配同一文档
中的一个 style
元素上的 title
属性的值。
1 | <meta http-equiv="default-style" content="the document's preferred stylesheet"> |
2.16 禁用缓存
禁止浏览器从本地计算机的缓存中访问页面内容:这样设定,访问者将无法脱机浏览。
1 | <meta http-equiv="Pragma" content="no-cache"> |
2.17 转码申明
用百度打开网页可能会对其进行转码(比如贴广告),避免转码可添加如下meta
1 | <meta http-equiv="Cache-Control" content="no-siteapp" /> |
2.18 WebApp全屏模式
伪装app,离线应用。
1 | <meta name="apple-mobile-web-app-capable" content="yes" /> <!-- 启用 WebApp 全屏模式 --> |
2.19 隐藏状态栏/设置状态栏颜色
只有在开启WebApp全屏模式时才生效。content的值为default | black | black-translucent 。
1 | <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" /> |
2.20 添加到主屏后的标题
1 | <meta name="apple-mobile-web-app-title" content="title"> |
2.21 忽略数字自动识别为电话号码
1 | <meta content="telephone=no" name="format-detection" /> |
2.22 忽略识别邮箱
1 | <meta content="email=no" name="format-detection" /> |
2.23 添加智能 App 广告条 Smart App Banner
告诉浏览器这个网站对应的app,并在页面上显示下载banner。
1 | <meta name="apple-itunes-app" content="app-id=myAppStoreID, affiliate-data=myAffiliateData, app-argument=myURL"> |
2.24 屏幕控制相关
1 | <!-- 针对手持设备优化,主要是针对一些老的不识别viewport的浏览器,比如黑莓 --> |
2.25 浏览器内核控制
国内浏览器很多都是双内核(webkit
和Trident
),webkit
内核高速浏览,IE内核
兼容网页和旧版网站。而添加meta标签的网站可以控制浏览器选择何种内核渲染
1 | <meta name="renderer" content="webkit|ie-comp|ie-stand"> |
国内双核浏览器默认内核模式如下:
搜狗高速浏览器、QQ浏览器:IE内核(兼容模式)
360极速浏览器、遨游浏览器:Webkit内核(极速模式)
2.26 Windows 8
1 | <meta name="msapplication-TileColor" content="#000"/> <!-- Windows 8 磁贴颜色 --> |
2.27 站点适配
主要用于PC-手机页的对应关系。
1 |
|
2.28 revisit-after (重访)
通知搜索引擎多少天访问一次
1 | <meta name="revisit-after" CONTENT="7 days" > |
2.29 Window-target (显示窗口的设定)
已经废弃
,说明:强制页面在当前窗口以独立页面显示。
1 |
|
注意:这个属性是用来防止别人在框架里调用你的页面。Content选项:_blank
、_top
、_self
、_parent
。
2.30 Pics-label (网页RSAC等级评定)
已经废弃
,说明:在IE的Internet选项中有一项内容设置,可以防止浏览一些受限制的网站,而网站的限制级别就是通过该参数来设置的。
1 |
|
注意:不要将级别设置的太高。RSAC的评估系统提供了一种用来评价Web站点内容的标准。用户可以设置Microsoft Internet Explorer(IE3.0以上)来排除包含有色情和暴力内容的站点。上面这个例子中的HTML
取自Microsoft
的主页。代码中的(n 0 s 0 v 0 l 0)表示该站点不包含不健康内容。级别的评定是由RSAC,即美国娱乐委员会的评级机构评定的,如果你想进一步了解RSAC评估系统的等级内容,或者你需要评价自己的网站,可以访问RSAC的站点:http://www.rsac.org/
。
2.31 Page-Enter、Page-Exit (进入与退出)
已经废弃
,说明:这个是页面被载入和调出时的一些特效。
1 |
|
Duration 表示滤镜特效的持续时间(单位:秒),Transition表示使用哪种特效,取值为0-23。
Transition | 滤镜类型 |
---|---|
0 | 矩形缩小 |
1 | 矩形扩大 |
2 | 圆形缩小 |
3 | 圆形扩大 |
4 | 下到上刷新 |
5 | 上到下刷新 |
6 | 左到右刷新 |
7 | 右到左刷新 |
8 | 竖百叶窗 |
9 | 横百叶窗 |
10 | 错位横百叶窗 |
11 | 错位竖百叶窗 |
12 | 点扩散 |
13 | 左右到中间刷新 |
14 | 中间到左右刷新 |
15 | 中间到上下 |
16 | 上下到中间 |
17 右下到左上 | |
18 | 右上到左下 |
19 | 左上到右下 |
20 | 左下到右上 |
21 | 横条 |
22 | 竖条 |
23 | 以上22种随机选择一种 |
2.32 MSThemeCompatible (XP主题)
已经废弃
,说明:是否在IE中关闭 xp 的主题
1 | <meta http-equiv="MSThemeCompatible" Content="Yes"> |
注意:关闭 xp 的蓝色立体按钮系统显示样式,从而和win2k 很象。
2.33 IE6 (页面生成器)
已经废弃
,说明:页面生成器generator,是ie6
1 | <meta http-equiv="IE6" Content="Generator"> |
注意:用什么东西做的,类似商品出厂厂商。
2.34 Content-Script-Type (脚本相关)
已经废弃
,说明:这是近来W3C的规范,指明页面中脚本的类型。
1 | <meta http-equiv="Content-Script-Type" Content="text/javascript"> |
3 常用备份
1 | <meta charset="utf-8"> |