应用场景
-
如何设置自己HTML页面使用的字符集?比如UTF-8。
<!-- html4版本 --> <meta http-equiv="Content-type" content="text/html";charset="GB2312"> <!-- html5版本 --> <meta charset="utf-8">
-
如何设置自己的HTML页面的使用语言类型?比如zh-cn。
<!-- html4版本:可以在meta标签中设置 --> <meta http-equiv="Content-Language" content="en"> <!-- html5版本:可以在html标签内设置 --> <html lang="zh">...</html>
-
如何设置自己网站的关键字 以便 让搜索引擎(爬虫)检索到?
<meta name="keywords" content="Web网站,代码平台"/>
-
如何设置自己网站的作者 让 搜索引擎知道?
<meta name="author" content="YY">
-
怎么告诉搜索引擎自己网站的内容/描述?
<meta name="description" content="这是一个很酷很酷的网站。"/>
-
如果不想让机器人检索到自己的网站,该怎么设置?
<meta name="robots" content="none">
如果仅检索链接而非文件,
content
可以为noindex
;如果想仅检索文件而非链接,content
可以为nofollow
。 -
客户端请求服务器端的HTML,CSS等文件多半会缓存到浏览器那里。那么怎么设置网页的到期时间呢?(一旦过期必须从服务器端重新传输)
<meta http-equiv="expires" content="Fri,12 Jan 2001 18:18:18 GMT">
-
更狠一点,甚至不设置到期时间,直接禁止浏览器缓存?
<meta http-equiv="Pragma" content="no-cache">
-
一个新场景:如果你写了一个访问失败的404.html页面,如何在不使用JS的情况下,让页面自动刷新并跳转到首页?
这里主要想问的是meta标签的自动刷新功能,当然,它还有重定向。
<!-- 每隔两秒刷新一次 --> <meta http-equiv="Refresh" content="2"> <!-- 隔两秒跳转到baidu , 如果不加协议头的话默认是相对路径 --> <meta http-equiv="Refresh" content="2;http://www.baidu.com">
小结
观察上面内容,我们可以看出来:
- 3 - 6点:是
name及content
形式,可以理解为以说明性内容为主的设置。 - 2、7 - 9点:是
http-equiv及content
形式,可以理解为对浏览器/页面具有一定的实际影响的参数设置。
其他例子
当然,上面的内容算是粗略的概括。还有很多meta标签的属性,比如VSCode的模板HTML中的name
-content
形式的meta
标签是有作用的:设置视口宽度为设备的宽度。可以理解为这是最基本的移动端适配。
<meta name="viewport" content="width=device-width, initial-scale=1.0">