我的朋友给我发了一个链接到这个小页面,它显示了一个简单的 HTML+CSS 布局页面。但是,如果您查看源代码,您会注意到没有指向 css 文件的链接。
如果您将 ff 与 firebug 一起使用,您可以看到在 NET 下,css 文件是通过发送的标头链接的(只是想向您展示所有这些)。
我的问题是,您是否有任何假设为什么这不适用于 safari,即?我假设标题不依赖于浏览器。是什么赋予了?
您可能会发现这是一个有用的资源:http ://www.w3.org/TR/html4/present/styles.html#h-14.6
不知道为什么它在 Safari/Chrome (Webkit) 中不起作用,但可能是因为:
本节仅适用于符合定义 Link 标头字段的 HTTP 版本的用户代理。请注意,[RFC2616] 定义的 HTTP 1.1 不包括 Link 标头字段(请参阅第 19.6.3 节)。
这是 HTML 规范的一部分,虽然不是 HTTP 1.1 的标准部分。(RFC2616 没有定义 Link 字段。)
因此,由各个用户代理来实现它。它非常晦涩,而且不是很有用,所以我猜它没有在 Webkit 中实现,要么是由于不知情,要么是故意避免模糊功能。
http://www.w3.org/TR/html4/present/styles.html#h-14.6
14.6 链接到带有 HTTP 标头的样式表
本节仅适用于符合定义 Link 标头字段的 HTTP 版本的用户代理。请注意,[RFC2616] 定义的 HTTP 1.1 不包括 Link 标头字段(请参阅第 19.6.3 节)。
所以基本上,这在 http 1.1 中不是标准的。
Mozilla 实际上有一篇题为Link prefectching的 MDC 文章,其中几乎涵盖了您想了解的所有内容以及他们支持它的原因。就我个人而言,我认为这听起来像是对时间和带宽的巨大浪费,并且只是为浏览器攻击敞开了大门。这是直接解决您的问题的报价:
哪些浏览器支持链接预取?
基于 Mozilla 1.2(或更高版本)的浏览器以及基于 Mozilla 1.0.2(或更高版本)的浏览器都支持预取。这包括 Firefox 和 Netscape 7.01+。截至 2003 年 3 月的 Camino 构建基于 Mozilla 1.0.1,因此不支持预取。测试您的浏览器以查看它是否支持链接预取。