html的meta标签和link标题图标设置

6次阅读

共计 3098 个字符,预计需要花费 8 分钟才能阅读完成。

<meta http-equiv=”x-dns-prefetch-control” content=”on”> 的作用

<meta http-equiv="x-dns-prefetch-control" content="on">

DNS Prefetch,即 DNS 预获取,是前端优化的一部分。一般来说,在前端优化中与 DNS 有关的有两点:一个是减少 DNS 的请求次数,另一个就是进行 DNS 预获取。

DNS 作为互联网的基础协议,其解析的速度似乎很容易被网站优化人员忽视。现在大多数新浏览器已经针对 DNS 解析进行了优化,典型的一次 DNS 解析需要耗费 20-120 毫秒,减少 DNS 解析时间和次数是个很好的优化方式。DNS Prefetching 是让具有此属性的域名不需要用户点击链接就在后台解析,而域名解析和内容载入是串行的网络操作,所以这个方式能 减少用户的等待时间,提升用户体验。

默认情况下浏览器会对页面中和当前域名(正在浏览网页的域名)不在同一个域的域名进行预获取,并且缓存结果,这就是隐式的 DNS Prefetch。如果想对页面中没有出现的域进行预获取,那么就要使用显示的 DNS Prefetch 了。

目前大多数浏览器已经支持此属性,支持版本如下:

  • – Safari: 5+
  • – Chrome: All
  • – Firefox: 3.5+
  • – Opera: Unknown
  • – IE: 9+ (called“Pre-resolution”on blogs.msdn.com)

其中 Chrome 和 Firefox 3.5+ 内置了 DNS Prefetching 技术并对 DNS 预解析做了相应优化设置。所以 即使不设置此属性,Chrome 和 Firefox 3.5+ 也能自动在后台进行预解析。

目前很多大型站点也应用了这一优化,例如:

淘宝:

支付宝:

网易:

DNS Prefetch 应该尽量的放在网页的前面,推荐放在 <meta charset="UTF-8"> 后面。具体使用方法如下:

1、<meta http-equiv="x-dns-prefetch-control" content="on">
2、<link rel="dns-prefetch" href="//www.zhix.net">
3、<link rel="dns-prefetch" href="//api.share.zhix.net">
4、<link rel="dns-prefetch" href="//bdimg.share.zhix.net">

需要注意的是,虽然使用 DNS Prefetch 能够加快页面的解析速度,但是也不能滥用,因为有开发者指出 禁用 DNS 预读取能节省每月 100 亿的 DNS 查询。

如果需要禁止隐式的 DNS Prefetch,可以使用以下的标签:

<meta http-equiv="x-dns-prefetch-control" content="off">

以上转载:前端优化系列之 DNS 预获取 dns-prefetch 提升页面载入速度

meta 标题图标和收藏夹图标设置

以小米官网为例:

 <link rel="shortcut icon" href="//s01.mifile.cn/favicon.ico" type="image/x-icon">

 <link rel="icon" href="//s01.mifile.cn/favicon.ico" type="image/x-icon">
type 可以设置多种图片类型。如:gif/png/ico

一般的图标尺寸都是 16px*16px

shortcut 和 icon 有何区别

过去,为保证 favicon 出现,网站设计者和开发者采用了多种方法。很难明确地保证 favicon 可以在所有电脑上显示,即使是用同一版本的一种浏览器。
下列代码另一个局限就是它把 favicon 关联到了某个特定的 HTML 或 XHTML 文档上。为避免这一点,favicon.ico 文件应置于根目录下。多数浏览器将自动检测并使用它。
建议包含以下两行 HTML 代码:

<link rel="shortcut icon" href="//s01.mifile.cn/favicon.ico" type="image/x-icon">

 <link rel="icon" href="//s01.mifile.cn/favicon.ico" type="image/x-icon"> 

然而,只有第一行是必须的,因为“shortcut icon”字符串将被多数遵守标准的浏览器识别为列出可能的关键词(“shortcut”将被忽略,而仅适用“icon”);而 Internet Explorer 将会把它作为一个单独的名称(“shortcut icon”)。这样做的结果是所有浏览器都可以理解此代码。只有当希望为新浏览器提供另一种备用图像(例如动画 GIF)时,才有必要添加第二行。
在 HTML 中,link 元件必须在 head 元件里(在 <head> 和 </head> 之间 )。
对于 XHTML,link 必须使用“/>”结束(或“></link>”),而不可以使用“>”结束。
href 可以,但不必,指向 /favicon.ico 的位置。它可以指向任何 URL。
图像通常可以使用任何被浏览器支持的图像格式。
.ico 文件格式通常可以被所有可以显示 favicon 的浏览器读取。
设置服务器,以发送正确的 MIME 标识:
ICO 文件 image/vnd.microsoft.icon(或者亦可出于兼容性原因使用 image/x-icon。然而最好使用 IANA 注册的 MIME 类型,因为多数主流浏览器现在支持它)
GIF 文件 image/gif
PNG 文件 image/png
使用适当的分辨率和色深。
ICO:包括多种分辨率(最常使用的是 16×16 和 32×32,Mac OS X 有时使用 64×64 和 128×128)以及位深(比特每像素)(多数使用 4、8、24 bpp,即 16、256 和 1600 万色)。
GIF: 使用 16×16,256 色。
PNG: 使用 16×16,256 色或 24 位。

` 注意:当 favicon.ico 被置于文档根目录时,将会被一些不处理 link 元件的浏览器找到,即使没有您的站点上没有指向它的链接。
标准化 `
Favicon 功能最早由微软创设,而微软公司的 Internet Explorer 网页浏览器会对每一个网站都请求 favicon。微软支持的 link 标签不遵从 World Wide Web Consortium(W3C,万维网联盟)的 HTML 建议 [1],因为:rel 属性必须包含一个用空格作分隔符的 link 类型的列表,所以一个包含两词的 link 类型不能被遵守标准的浏览器理解。

“.ico”文件类型(一种用于 Microsoft Windows 上图标的光栅格式)没有一个注册的 MIME 类型,而且似乎在当时也不能被多数浏览器理解。

然而 2003 年,这一格式在 IANA 获得注册,其 MIME 类型是 image/vnd.microsoft.icon,进而消除了此问题的第一部分。
在网站上使用保留地址(reserved location)与 Architecture of the World Wide Web(互联网的结构)矛盾,同时被认为是 link squatting(链接劫持)或 URI squatting(URI 劫持)。

Mozilla 浏览器通过一种遵从 Web 标准的方法添加了对 favicon 的支持。它采用 rel=”icon” 并允许网络设计人员添加任何支持的图像格式的 favicon。例如 <link rel=”icon” type=”image/png” href=”/path/image.png”>。

后来鉴于此功能将被用于所有新内容,多数浏览器都对此功能增加了支持。

正文完
 0