定义与用法
- <meta> 元素可提供有关页面的元信息(meta-information),通常用于指定网页的描述,关键词,文件的最后修改时间,作者、搜索引擎和更新频度及其他元数据。
- 元数据可以被使用浏览器(如何显示内容或重新加载页面),搜索引擎(关键词),或其他 Web 服务调用。
- <meta> 标签位于文档的头部,不包含任何内容。元数据不会显示在客户端,但是会被浏览器解析。
- <meta> 标签的属性定义了与文档相关联的名称/值对。
- <meta> 标签永远位于 head 元素内部。
- 元数据总是以名称/值的形式被成对传递的。
- meta 标签可以出现多次,如果没有提供 name 属性,那么名称/值对中的名称会采用 http-equiv 属性的值。
- 在 HTML 中 <meta> 标签没有结束标签;在 XHTML 中 <meta> 标签必须包含结束标签。
- 如下所示:
<head>
<meta name="description" content="免费在线教程">
<meta name="keywords" content="HTML,CSS,XML,JavaScript">
<meta name="author" content="runoob">
<meta charset="UTF-8">
</head>
meta 标签属性
必需的属性:
属性 | 值 | 描述 | 版本支持 |
---|---|---|---|
content | some_text | 定义与 http-equiv 或 name 属性相关的元信息 | 4,5 |
可选的属性:
属性 | 值 | 描述 | 版本支持 |
---|---|---|---|
charset |
character encoding |
定义文档的字符编码。 |
5 |
http-equiv |
|
把 content 属性关联到 HTTP 头部。 | 4,5 |
name |
|
把 content 属性关联到一个名称。 | 4,5, |
scheme | some_text | 定义用于翻译 content 属性值的格式。 | 4 |
name 属性
- name 属性提供了 content 中键值对的名称。HTML 和 XHTML 标签都没有指定任何预先定义的 <meta> 名称。通常情况下,您可以自由使用对自己和源文档的读者来说富有意义的名称。
- "keywords" 是一个经常被用到的名称,它为文档定义了一组关键字,某些搜索引擎在遇到这些关键字时,会用这些关键字对文档进行分类。
- 类似这样的 meta 标签可能对于进入搜索引擎的索引有帮助:
<meta name="keywords" content="HTML,ASP,PHP,SQL">
- 如果没有提供 name 属性,那么 content 中键值对的名称会采用 http-equiv 属性的值。
http-equiv 属性
- 使用带有 http-equiv 属性的 <meta> 标签时,服务器将把名称/值对添加到发送给浏览器的内容头部。
- 当服务器向浏览器发送文档时,会先发送许多名称/值对,虽然有些服务器会发送许多这种名称/值对,但是所有服务器都至少要发送一个:content-type:text/html,这将告诉浏览器准备接受一个 HTML 文档。
如: <meta http-equiv="charset" content="iso-8859-1"> <meta http-equiv="expires" content="31 Dec 2008"> 这样发送到浏览器的头部就应该包含: content-type: text/html charset:iso-8859-1 expires:31 Dec 2008
content 属性
- content 属性提供了名称/值对中的值。该值可以是任何有效的字符串。
- content 属性始终要和 name 属性或 http-equiv 属性一起使用。
name viewport 移动端优化
- 可以参考:viewport 深入理解(https://www.runoob.com/w3cnote/viewport-deep-understanding.html)
- viewport 属性用于移动端显示优化,特别是手机等设备上显示时,加上此属性和不加完全是两回事,加上之后网页看起来会更加像手机上的APP页面。
- 常用 content 键值对如下:
width | 设置layout viewport 的宽度,为一个正整数,或字符串"width-device" |
initial-scale | 设置页面的初始缩放值,为一个数字,可以带小数 |
minimum-scale | 允许用户的最小缩放值,为一个数字,可以带小数 |
maximum-scale | 允许用户的最大缩放值,为一个数字,可以带小数 |
height | 设置layout viewport 的高度,这个属性对我们并不重要,很少使用 |
user-scalable | 是否允许用户进行缩放,值为 "no" 或 "yes", no 代表不允许,yes 代表允许 |
-
使用示例如下:
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
HTML 4 与 5 差异
- HTML5 不支持 scheme 属性。
- 在 HTML5 中,有一个新的 charset 属性,它使字符集的定义更加容易:
HTML 4.01: <meta http-equiv="content-type" content="text/html; charset=UTF-8">
HTML5: <meta charset="UTF-8">
常用实例
实例 1 - 定义文档关键词,用于搜索引擎:
<meta name="keywords" content="HTML, CSS, XML, XHTML, JavaScript">
实例 2 - 定义web页面描述:
<meta name="description" content="Free Web tutorials on HTML and CSS">
实例 3 - 定义页面作者:
<meta name="author" content="Hege Refsnes">
实例 4 - 每30秒刷新页面:
<meta http-equiv="refresh" content="30">
实例 5 - 10 秒后重定向到 http://www.w3school.com.cn 页面:
<meta http-equiv="Refresh" content="10;url=http://www.w3school.com.cn" />
实例6 - 移动端页面显示优化
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">