5

我的朋友给我发了一个链接到这个小页面,它显示了一个简单的 HTML+CSS 布局页面。但是,如果您查看源代码,您会注意到没有指向 css 文件的链接。

如果您将 ff 与 firebug 一起使用,您可以看到在 NET 下,css 文件是通过发送的标头链接的(只是想向您展示所有这些)。

我的问题是,您是否有任何假设为什么这不适用于 safari,即?我假设标题不依赖于浏览器。是什么赋予了?

4

5 回答 5

3

您可能会发现这是一个有用的资源: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 节)。

于 2010-02-05T23:27:25.863 回答
1

这是 HTML 规范的一部分,虽然不是 HTTP 1.1 的标准部分。(RFC2616 没有定义 Link 字段。)

因此,由各个用户代理来实现它。它非常晦涩,而且不是很有用,所以我猜它没有在 Webkit 中实现,要么是由于不知情,要么是故意避免模糊功能。

于 2010-02-05T23:27:29.390 回答
1

它发送的 HTTP 标头是Link: <style.css>; REL=stylesheet,相当于 HTML 元素<link rel="stylesheet" href="style.css" />

这是一个仅支持 HTTP 1.0 的标头。由于缺乏实现,在RFC2068、 19.6.1.2 LINK 中添加,在RFC2616中删除(连同PATCH和)。UNLINK

于 2010-02-05T23:34:50.453 回答
0

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 中不是标准的。

于 2010-02-05T23:30:55.713 回答
0

Mozilla 实际上有一篇题为Link prefectching的 MDC 文章,其中几乎涵盖了您想了解的所有内容以及他们支持它的原因。就我个人而言,我认为这听起来像是对时间和带宽的巨大浪费,并且只是为浏览器攻击敞开了大门。这是直接解决您的问题的报价:

哪些浏览器支持链接预取?

基于 Mozilla 1.2(或更高版本)的浏览器以及基于 Mozilla 1.0.2(或更高版本)的浏览器都支持预取。这包括 Firefox 和 Netscape 7.01+。截至 2003 年 3 月的 Camino 构建基于 Mozilla 1.0.1,因此不支持预取。测试您的浏览器以查看它是否支持链接预取。

于 2010-02-05T23:44:56.897 回答