标准元数据名称
The <meta>
element can be used to provide document metadata in terms of name-value pairs, with the name
attribute giving the metadata name, and the content
attribute giving the value.
HTML 规范中定义的标准元数据名称
HTML 规范定义了以下标准元数据名称集
application-name
: 运行在网页中的应用程序的名称。注意
- 浏览器可能会使用此名称来识别应用程序。它不同于
<title>
元素,后者通常包含应用程序名称,但也可以包含文档名称或状态等信息。 - 简单的网页不应定义 application-name。
- 浏览器可能会使用此名称来识别应用程序。它不同于
author
: 文档作者的名称。description
: 页面内容的简短准确摘要。 搜索引擎如 Google 可能会使用此字段来控制网页在搜索结果中的显示方式。generator
: 生成页面的软件标识符。keywords
: 与页面内容相关的词语,用逗号分隔。referrer
: 控制从文档发送的请求的 HTTPReferer
头部。<meta name="referrer">
的content
属性的值。no-referrer
不要发送 HTTP Referer
头部。origin
发送文档的 来源。 no-referrer-when-downgrade
当目标至少与当前页面一样安全时(HTTP(S)→HTTPS),发送完整 URL,但在安全性较低时(HTTPS→HTTP)不发送任何引用者。 这是默认行为。 origin-when-cross-origin
对于同源请求发送完整 URL(去除参数),但对于其他情况只发送来源。 same-origin
对于同源请求发送完整 URL(去除参数)。 跨源请求将不包含任何引用者头部。 strict-origin
当目标至少与当前页面一样安全时(HTTP(S)→HTTPS),发送来源,但在安全性较低时(HTTPS→HTTP)不发送任何引用者。 strict-origin-when-cross-origin
对于同源请求发送完整 URL(去除参数)。 当目标至少与当前页面一样安全时(HTTP(S)→HTTPS),发送来源。 否则不发送任何引用者。 unsafe-URL
对于同源或跨源请求发送完整 URL(去除参数)。 注意
- 动态插入
<meta name="referrer">
(使用document.write()
或appendChild()
)会使引用者行为不可预测。 - 当定义了多个冲突的策略时,将应用
no-referrer
策略。
- 动态插入
theme-color
: 指示用户代理应使用的一种建议颜色,以自定义页面或周围用户界面的显示效果。content
属性包含有效的 CSS<color>
。 可以包含具有有效媒体查询列表的media
属性来设置主题颜色元数据应用到的媒体。-
color-scheme
: 指定文档兼容的一种或多种配色方案。 浏览器将使用此信息与用户的浏览器或设备设置一起,来确定用于从背景和前景到表单控件和滚动条的所有内容的颜色。<meta name="color-scheme">
的主要用途是指示与亮色和暗色模式的兼容性以及优先级顺序。color-scheme
的content
属性的值可以是以下值之一normal
-
文档不知道配色方案,应使用默认配色方案呈现。
light
,dark
,light dark
,dark light
-
文档支持的一种或多种配色方案。 多次指定相同的配色方案的效果与只指定一次相同。 指定多个配色方案表示第一个方案是文档的优先选择,但如果用户更喜欢第二个指定的方案,则该方案是可以接受的。
only light
-
表示文档只支持亮色模式,具有亮色背景和暗色前景颜色。 根据规范,
only dark
无效,因为强制文档在不真正兼容暗色模式的情况下呈现为暗色模式会导致内容不可读;所有主要浏览器在未配置的情况下默认使用亮色模式。
这在文档级别有效,就像 CSShtml<meta name="color-scheme" content="dark light" />
color-scheme
属性允许单个元素指定其首选和接受的配色方案一样。 你的样式可以使用prefers-color-scheme
CSS 媒体特征来适应当前配色方案。
其他规范中定义的标准元数据名称
CSS 设备自适应规范定义了以下元数据名称
viewport
: 提供有关 视窗 的初始大小的提示。<meta name="viewport">
的内容值值 可能的子值 描述 width
一个正整数或文本 device-width
定义你想让网站呈现的视窗像素宽度。 height
一个正整数或文本 device-height
定义视窗高度。 未被任何浏览器使用。 initial-scale
0.0
到10.0
之间的正数定义设备宽度(纵向模式下的 device-width
或横向模式下的device-height
)与视窗大小之间的比例。maximum-scale
0.0
到10.0
之间的正数定义最大缩放比例。 它必须大于或等于 minimum-scale
,否则行为将是未定义的。 浏览器设置可以忽略此规则,iOS10+ 默认情况下会忽略它。minimum-scale
0.0
到10.0
之间的正数定义最小缩放比例。 它必须小于或等于 maximum-scale
,否则行为将是未定义的。 浏览器设置可以忽略此规则,iOS10+ 默认情况下会忽略它。user-scalable
yes
或no
如果设置为 no
,则用户无法缩放网页。 默认值为yes
。 浏览器设置可以忽略此规则,iOS10+ 默认情况下会忽略它。viewport-fit
auto
,contain
或cover
auto
值不会影响初始布局视窗,整个网页都是可见的。contain
值表示视窗按比例缩放以适合显示器内最大的内接矩形。cover
值表示视窗按比例缩放以填充设备显示器。 强烈建议使用 安全区域内边距 变量来确保重要内容不会出现在显示器之外。警告
通过将
user-scalable
设置为no
来禁用缩放功能会阻止视力障碍者阅读和理解页面内容。
其他元数据名称
WHATWG Wiki 元扩展页面 包含大量尚未正式接受的非标准元数据名称;但是,其中一些名称在实践中已经非常普遍地使用 - 包括以下内容
creator
: 文档创建者的名称,例如组织或机构。 如果有多个创建者,应使用多个<meta>
元素。googlebot
,是robots
的同义词,只被 Googlebot(Google 的索引爬虫)使用。publisher
: 文档发布者的名称。robots
: 协作爬虫或“机器人”应如何使用页面的行为。 它是一个逗号分隔的值列表,如下所示值 描述 使用对象 index
允许机器人索引页面(默认值)。 所有 noindex
请求机器人不要索引页面。 所有 follow
允许机器人跟随页面上的链接(默认值)。 所有 nofollow
请求机器人不要跟随页面上的链接。 所有 all
等效于 index, follow
Google none
等效于 noindex, nofollow
Google noarchive
请求搜索引擎不要缓存页面内容。 Google,Yahoo,Bing nosnippet
阻止在搜索引擎结果中显示页面描述。 Google,Bing noimageindex
请求此页面不要作为已索引图像的引用页面出现。 Google nocache
是 noarchive
的同义词。Bing 注意
- 只有协作机器人会遵循这些规则。 不要指望通过它们来阻止电子邮件收集器。
- 机器人仍然需要访问页面才能读取这些规则。 为了防止带宽消耗,请考虑是否使用robots.txt 文件更合适。
robots
<meta>
标签和robots.txt
文件用途不同:robots.txt
控制页面爬取,不会影响索引或robots
元数据控制的其他行为。 如果页面被其他文档引用,则即使无法爬取,它也可能仍然被索引。- 如果你想删除页面,
noindex
会起作用,但只有在机器人再次访问页面之后才会起作用。 确保robots.txt
文件没有阻止重新访问。 - 一些值是互斥的,例如
index
和noindex
,或follow
和nofollow
。 在这些情况下,机器人的行为是未定义的,并且它们之间可能有所不同。 - 一些爬虫机器人,如 Google、Yahoo 和 Bing,支持 HTTP 头部
X-Robots-Tag
的相同值;这允许非 HTML 文档(如图像)使用这些规则。
规范
规范 |
---|
HTML 标准 # standard-metadata-names |
引用者策略 # referrer-policy-delivery-meta |
浏览器兼容性
BCD 表格仅在浏览器中加载