©
本文档使用
php.cn手册 发布
HTML <meta>
元素表示元数据不能由其他HTML元相关的元素,<base>
,<link>
,<script>
,<style>
或<title>
表示。
内容类别 | 元数据内容。如果itemprop属性存在:流内容,措辞内容。 |
---|---|
允许的内容 | 没有,这是一个空的元素。 |
标记遗漏 | 由于它是空白元素,所以开始标记必须存在,并且结束标记不得存在。 |
允许父母 | <meta charset>,<meta http-equiv>:一个<head>元素。如果http-equiv不是一个编码声明,它也可以在一个<head>元素内部,它本身在一个<head>元素内。 |
允许ARIA角色 | 没有 |
DOM界面 | HTML元素meta |
该元素包含全局属性。
注:全局属性name
具有了特定的含义<meta>
元素和itemprop
属性必须在不同的<meta>
设置任何现有的元素name
,http-equiv
或charset
属性。
charset
声明页面的字符编码。此属性必须包含字符编码的标准IANA MIME名称。虽然标准没有要求特定的编码,但它暗示了......
鼓励作者使用UTF-8
。
作者不应该使用与ASCII不兼容的编码来避免安全风险:不支持它们的浏览器可能会将无害的内容解释为HTML。这种情况至少JIS_C6226-1983
,JIS_X0212-1990
,HZ-GB-2312
,JOHAB
,的ISO-2022系列,以及EBCDIC家庭。(ASCII不相容编码是那些不将8位的代码点映射0x20
到0x7E
给0x0020
到0x007E
Unicode代码点)
作者不得使用CESU-8
,UTF-7
,BOCU-1
和SCSU
,因为跨站点脚本与这些编码攻击已被证明。
作者不应该使用,UTF-32
因为不是所有的HTML5编码算法都可以区分它UTF-16
。
笔记:
声明的字符编码必须与页面保存的字符编码匹配,以避免出现乱码和安全漏洞。
该<meta>
声明的编码元素必须是内部<head>
元件和第1024个字节中的HTML,某些浏览器只能看着这些字节选择一个编码之前。
该<meta>
元素只是确定页面字符集的算法的一部分。该Content-Type
头和任何字节顺序标记覆盖此元素。
强烈建议您定义字符编码。如果页面的编码未定义,则可以使用交叉脚本技术,例如UTF-7
回退跨脚本技术。
<meta>
带有charset
属性的元素是HTML5之前的同义词,其中包含等效属性的值。尽管不再推荐,但该语法仍然是允许的。<meta http-equiv="Content-Type" content="text/html; charset=IANAcharset">IANAcharsetcharset
content
此属性包含http-equiv
or name
属性的值,具体取决于所使用的值。http-equiv
该属性可以包含HTTP头的名称,因此属性名称为http-equiv alent。它定义了一条可以改变服务器和用户代理行为的指令。指令的值是在content
属性内定义的,可以是下列之一:"content-language"
定义页面的默认语言。它可以被任何元素的lang属性覆盖。
不要使用这个值,因为它已经过时了。优先lang
选择<html>
元素上的属性。
"content-security-policy"
允许页面作者为当前页面定义内容策略。内容策略通常指定允许的服务器源和脚本端点,这有助于防止跨站点脚本攻击。"content-type"
定义文档的MIME类型,后跟其字符编码。它遵循与HTTP content-type
实体标题字段相同的语法,但由于它位于HTML页面内,除了text/html
不可能以外,大多数值都是。因此,其有效语法content
是字符串' text/html
',后面跟着一个字符集,其语法如下:' ; charset=IANAcharset
',其中IANAcharset
是由IANA定义的字符集的首选MIME名称。
使用说明:
不要使用这个值,因为它已经过时了。优先charset
选择<meta>
元素上的属性。
由于<meta>
无法在XHTML或HTML5的XHTML序列化中更改文档类型,因此请勿将MIME类型设置为XHTML MIME类型<meta>
。
"refresh"
该指令规定:
如果content
属性仅包含正整数,则应重新载入页面的秒数。
直到页面重定向到另一个页面的秒数,如果该content
属性包含一个正整数,后跟字符串“ ;url=
',则为有效URL。
"set-cookie"
为页面定义一个cookie。其内容必须遵循IETF HTTP Cookie规范中定义的语法。
注意:不要使用这个指令,因为它已经过时了。Set-Cookie
改为使用HTTP标头。
name
该属性定义了一段文档级元数据的名称。它不应该,如果一个属性进行设置itemprop
,http-equiv
或者也设置charset
。
此元数据名称与该content
属性包含的值相关联。name属性的可能值是:
application-name
定义在网页中运行的应用程序的名称。
注意:
浏览器可以使用它来识别应用程序。它与<title>
通常包含应用程序名称的元素不同,但也可能包含文档名称或状态等信息。
简单的网页不应定义应用程序名称。
author
定义文档作者的名字。
description
包含页面内容的简短而准确的摘要。一些浏览器,如Firefox和Opera,将其用作书签页面的默认描述。
generator
包含生成页面的软件的标识符。
keywords
包含与页面内容相关的单词,用逗号分隔。
referrer
控制附加到从文档发送的请求的Referer
HTTP标头:content
属性的值<meta name="referrer">
no-referrer
不发送HTTP Referer
标头。 origin
发送文件的来源。 no-referrer-when-downgrade
将来源作为引荐来源发送到网址,与当前网页(https→https)一样安全,但不要将引荐来源发送到安全性较低的网址(https→http)。这是默认行为。 origin-when-crossorigin
发送完整的URL(去除参数)用于同源请求,但只发送其他情况的原点。 unsafe-URL
发送同源或跨源请求的完整URL(剥离参数)。
- Some browsers support the deprecated values `always`, `default`, and `never` for referrer.- Dynamically inserting `<meta name="referrer">` (with [`document.write`](https://developer.mozilla.org/en-US/docs/Web/API/Document/write) or [`appendChild`](https://developer.mozilla.org/en-US/docs/Web/API/Node/appendChild)) makes referrer behavior unpredictable.- When several conflicting policies are defined, the no-referrer policy is applied.
该属性也可能具有从WHATWG Wiki MetaExtensions页面上定义的扩展列表中取得的值。尽管尚未正式接受,但一些常用的名称是:
最后,有几个名字是常用的,虽然没有被标准化:
creator
定义文档的创建者的名称,例如组织或机构。如果有多个,<meta>
应该使用几个元素。
googlebot
,robots
Googlebot是Google的索引爬行程序的同义词,但后面跟着它。
publisher
定义文档发布者的名称。
robots
定义协作抓取工具或“机器人”应该在页面中使用的行为。它是以下值的逗号分隔列表:值<meta name="robots">
描述使用的内容值 index
允许机器人为页面编制索引(默认值)。全部 noindex
请求机器人不索引页面。全部 follow
允许机器人按照页面上的链接(默认)。全部 nofollow
请求机器人不遵循页面上的链接。none
与noindex, nofollow
Google 等同的所有内容 noodp
阻止将开放目录项目描述(如果有)用作搜索引擎结果中的页面描述。 Google,Yahoo,Bing noarchive
请求搜索引擎不缓存页面内容。 Google,Yahoo,Bing nosnippet
阻止在搜索引擎结果中显示页面的任何描述。 Google,Bing noimageindex
请求此页面不会显示为索引图像的引用页面。Google的 nocache
同义词noarchive
。Bing 笔记:
只有合作机器人遵循这些规则。不要期望与他们一起阻止电子邮件收割机。
机器人仍然需要访问该页面才能阅读这些规则。为了防止带宽消耗,请使用robots.txt文件。
如果你想删除一个页面,noindex
将工作,但只有在机器人再次访问页面后。确保robots.txt
文件不妨碍重访。一些搜索引擎具有开发人员的工具,可以快速删除页面。
有些值是互斥的,比如index
和noindex
,或follow
和nofollow
。在这些情况下,机器人的行为是不确定的,它们之间可能有所不同。
一些爬行机器人,如Google,Yahoo和Bing,支持HTTP标头的相同值X-Robot-Tags
; 这允许诸如图像的非HTML文档使用这些规则。
slurp
,是robots
Yahoo搜索的抓取工具Slurp 的同义词。
viewport
,它提供了有关视口初始大小的提示。仅供移动设备使用。值<meta name="viewport">
可能的子值的内容的值说明 width
正整数或文本device-width
定义视口的像素宽度,或允许视口适应设备的屏幕宽度。 height
正整数或文本device-height
定义视口的高度。不被任何浏览器使用。 initial-scale
介于0.0
和10.0
之间的正数定义设备宽度(device-width
纵向模式或device-height
横向模式)与视口大小之间的比率。 和maximum-scale
之间的正数0.010.0
定义要放大的最大金额。它必须大于或等于minimum-scale
或未定义行为。浏览器设置可以忽略这个规则,iOS10 +默认忽略它。 minimum-scale
介于0.0
和之间的正数10.0
定义最小缩放级别。它必须小于或等于maximum-scale
行为未定义。浏览器设置可以忽略这个规则,iOS10 +默认忽略它。 user-scalable
yes
或者no
如果设置为no
,用户无法放大网页。默认是yes
。浏览器设置可以忽略这个规则,iOS10 +默认忽略它。规范状态注释 CSS设备适配 在该规范中定义'<meta name =“viewport”>“。工作草案非规范性地描述了视口META元素另请参见:注意: 虽然没有标准化,但由于事实上的支配地位,大多数移动浏览器都会遵守此声明。 - 设备和浏览器的默认值可能不同。- 要了解关于Firefox for Mobile的声明,请参阅本文。
scheme
属性定义了描述元数据的方案。一个计划是一个能够正确解释content
价值的环境,就像一种格式。
注意:不要使用此值,因为它已过时。没有替代品,因为它没有真正的用法。
Depending on the attributes set, the kind of metadata can be one of the following:
如果name
已设置,则为文档级 元数据,适用于整个页面。
如果http-equiv
已设置,则它是一个杂注指令 - 通常由Web服务器提供有关如何提供网页的信息。
如果charset已
设置,它是一个字符集声明 - 网页使用的字符编码。
如果itemprop
已设置,则它是用户定义的元数据 - 对于用户代理是透明的,因为元数据的语义是用户特定的。
<meta charset="utf-8"><!-- Redirect page after 3 seconds --><meta http-equiv="refresh" content="3;url=https://www.mozilla.org">
Specification | Status | Comment |
---|---|---|
Referrer PolicyThe definition of '<meta name="referrer">' in that specification. | Editor's Draft | Defines values and semantics of <meta name="referrer">. |
HTML Living StandardThe definition of '<meta>' in that specification. | Living Standard | Added itemprop attribute |
HTML5The definition of '<meta>' in that specification. | Recommendation | Added charset attribute |
HTML 4.01 SpecificationThe definition of '<meta>' in that specification. | Recommendation |
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic Support | (Yes) | (Yes) | 1.0 | (Yes) | (Yes) | (Yes) |
charset | (Yes) | (Yes) | 1.0 | (Yes) | (Yes) | (Yes) |
content | (Yes) | (Yes) | 1.0 | (Yes) | (Yes) | (Yes) |
http-equiv | (Yes) | (Yes) | 1.0 | (Yes) | (Yes) | (Yes) |
name | (Yes) | (Yes) | 1.0 | (Yes) | (Yes) | (Yes) |
Feature | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
Basic Support | (Yes) | (Yes) | (Yes) | 1.0 | (Yes) | (Yes) | (Yes) |
charset | (Yes) | (Yes) | (Yes) | 1.0 | (Yes) | (Yes) | (Yes) |
content | (Yes) | (Yes) | (Yes) | 1.0 | (Yes) | (Yes) | (Yes) |
http-equiv | (Yes) | (Yes) | (Yes) | 1.0 | (Yes) | (Yes) | (Yes) |
name | (Yes) | (Yes) | (Yes) | 1.0 | (Yes) | (Yes) | (Yes) |