欢迎来到DIVCSS5查找CSS资料与学习DIV CSS布局技术!
  head标签里有什么?
 
  每一个HTML文档中,都有一个不可或缺的标签:<head>,它作为一个容器,主要包含了用于描述HTML文档自身信息(元数据)的标签,这些标签一般不会在页面中被显示出来,大多情况下是给浏览器和搜索引擎看的。
 
  可以用在<head>里面的标签有:<title>,<base>,<link>,<style>,<meta>,<script>,<noscript>。
 
  元信息标签介绍
 
  <title>
 
  定义文档的标题,显示在浏览器的标题栏或标签页上,一般会完整地概括整个网页的内容。
 
  <base>
 
  给页面上所有相对URL的提供一个基础。一份文档中只能有一个<base>标签。
 
  目前我只观察到「淘宝网」使用了这个标签。
 
  <link>
 
  规定外部资源与当前文档的关系,常于链接样式表,如下所示:
 
  <linkrel="stylesheet"href="xxx.css"type="text/css">
 
  当然还有很多其他的作用:
 
  比如用于SEO,主要给搜索引擎看的:
 
  <linkrel="canonical"href="...">
 
  在网站中常有多个url指向同一个页面的情况,上述标签告知搜索引擎页面的主url是什么,以便搜索引擎保留主要页面而去除其他重复页面。
 
  提供rss订阅的:
 
  <linkrel="alternate"type="application/rss+xml"title="RSS"href="...">
 
  上述标签除搜索引擎可以看懂以外,也能被很多浏览器插件识别。
 
  表示页面icon的:
 
  <linkrel="icon"href="https://xxx.png">
 
  多数浏览器会读取这个link的资源并展示在页面上。
 
  对页面提供预处理的:
 
  <linkrel="dns-prefetch"href="//xxx.com">
 
  提前对一个域名做dns查询。强制对域名进行预读取在有的情况下很有用,。
 
  比如,在网站的主页上,强制在整个网站上对频繁引用的域名做预解析处理,即使它们不在主页本身上使用。虽然主页的性能可能不受影响,但是会提高站点整体性能。
 
  <style>
 
  包含文档的样式信息。
 
  <meta>
 
  一种通用的元数据信息表示标签,一般以键值对出现,如:<metaname="xxx"content="yyy">
 
  charset属性
 
  <metacharset="UTF-8">
 
  从HTML5开始,上述写法被推荐使用,用于声明当前文档所使用的字符编码,推荐放在<head>中的第一位。
 
  http-equiv属性
 
  <metahttp-equiv="content-type"content="text/html;charset=UTF-8">
 
  在HTML4中,上述代码用于声明字符集,但是现在已不被推荐。
 
  除了content-type,还有其他几个值:
 
  content-language(已过时)、set-cookie(已过时)、default-style、refresh、content-security-policy
 
  因为不常用,所以就不一一介绍了,也挺容易理解,感兴趣可以点击这里了解。
 
  name属性
 
  其实<meta>标签可以被自由定义,只要读取和写入的双方约定好name和content的格式就可以了。来看一个例子:
 
  <metaname="viewport"content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no">
 
  上面这种用法并不在HTML标准中,但是却移动端开发的事实标准。这里来解释一下content中的内容:
 
  width:页面宽度,可以是一个正整数;也可以一个字符串"device-width",表示跟设备宽度相等。height:页面高度,可以是一个正整数;也可以一个字符串"device-height",表示跟设备高度相等。initial-scale:初始缩放比例。minimum-scale:最小缩放比例。maximum-scale:最大缩放比例。user-scalable:是否允许用户缩放。
 
  name属性的值除了可以是viewport之外,还有相当多的值:
 
  application-name、author、description、generator、keywords、referrer、robots等。
 
  同样的,就不一一介绍了,感兴趣可以点击这里了解。
 
  <script>
 
  用于嵌入或引用可执行脚本。来看几个script标签常见的全局属性:
 
  async
 
  使浏览器使用另一个线程下载脚本,这时不会阻塞页面渲染。当脚本下载完成后,浏览器会暂停渲染,执行脚本,执行完毕后继续渲染页面。
 
  async无法保证脚本的执行顺序,哪个脚本先下载结束就会先执行。
 
  defer
 
  同样会使浏览器并行下载脚本,但是下载完毕不会立即执行,而是会等到DOM加载完成后(即刚刚读取完</html>标签)再执行脚本。
 
  defer可以保证脚本的执行顺序就是它们在页面上出现的顺序。
 
  src
 
  定义引用外部脚本的地址,指定此属性的script标签内不应再有嵌入的脚本。如果脚本文件使用了非英语字符,还应该注明字符的编码。如:
 
  <scriptcharset="utf-8"src="https://www.example.com/script.js"></script>
 
  type
 
  默认值是text/javascript
 
  想了解更多关于<script>标签的详细内容可以点击这里。
 
  <noscript>
 
  如果页面上的脚本类型不受支持或者当前在浏览器中关闭了脚本,则在此中定义脚本未被执行时的替代内容。
 
  总结
 
  本文到这里就结束了,其实关于link和meta标签还有很多没有介绍到,很多相关标签都是有特殊的需求,只有在特定情况下才会使用,比如移动端开发就会用许多在PC上并不需要的标签。
 
  当然平时使用也主要是看需求,就拿我目前来说,只是些许用到过一些与viewport和SEO相关的标签。
 
  鉴于此我推荐一个不错的学习方法,就是去各大网站查看它们的head标签里都有什么,遇到没见过的就去搜索一下,熟悉起来会很快。
 
  我这边看过的网站有:「淘宝网」、「阿里巴巴」、「京东」、「网易严选」、「起点中文网」等。





本文转载自中文网

 

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h55813.shtml