fichier CSS « Hidden » ne fonctionne que pour FF, Opera
Question
Mon ami m'a envoyé un lien vers cette petite qui montre un simple HTML + CSS layed en page. Toutefois, si vous regardez le code source, vous remarquerez qu'il n'y a pas de lien vers le fichier css.
Si vous utilisez ff avec Firebug, vous pouvez voir que sous NET, le fichier css est lié par un en-tête envoyé (voulais juste montrer que vous tous).
Ma question est, avez-vous une hypothèse comme pourquoi cela ne fonctionne pas avec Safari, par exemple? Je suppose que les en-têtes ne sont pas dépendant du navigateur. Ce qui donne?
La solution
Vous pouvez trouver cette ressource utile: http: / /www.w3.org/TR/html4/present/styles.html#h-14.6
Je ne sais pas pourquoi il ne fonctionne pas dans Safari / Chrome (Webkit), mais il pourrait être à cause de cela:
Cette section concerne uniquement les agents utilisateurs conformes aux versions de HTTP qui définissent un champ d'en-tête de lien. Notez que HTTP 1.1 tel que défini par [RFC2616] ne comprend pas un champ d'en-tête de lien (voir section 19.6.3).
Autres conseils
Cela fait partie de la spécification HTML, mais ne fait pas partie standard HTTP 1.1. (RFC2616 ne définit pas le champ Lien.)
A cause de cela, il appartient aux agents utilisateurs individuels pour la mettre en œuvre. Il est assez obscur, et pas très utile, donc je suppose qu'il ne soit pas mis en œuvre Webkit soit en raison de l'ignorance, ou l'intention délibérée d'éviter caractéristiques obscures.
L'en-tête HTTP envoie est Link: <style.css>; REL=stylesheet
, ce qui équivaut à l'élément HTML <link rel="stylesheet" href="style.css" />
.
Il est un HTTP 1.0 uniquement d'en-tête pris en charge. Ajouté RFC2068, 19.6.1.2 LINK, enlevé dans RFC2616 (avec PATCH
et UNLINK
) en raison du manque de mises en œuvre.
http://www.w3.org/TR /html4/present/styles.html#h-14.6
14,6 Liens vers des feuilles de style avec les en-têtes HTTP
Cette section concerne uniquement les agents utilisateurs conformes aux versions de HTTP qui définissent un champ d'en-tête de lien. Notez que HTTP 1.1 tel que défini par [RFC2616] ne comprend pas un champ d'en-tête de lien (voir section 19.6.3).
Donc, fondamentalement, ce n'est pas standard http 1.1.
Mozilla a fait un article intitulé MDC Lien prefectching qui va dans presque tout ce que vous veulent savoir à ce sujet et pourquoi ils le soutiennent. Personnellement, je pense que cela ressemble à un énorme gaspillage de temps et de bande passante et laisse juste une porte ouverte aux attaques de navigateur. Voici une citation qui répond directement à votre question:
Quels sont les navigateurs lien de soutien préchargement?
Les navigateurs basés sur Mozilla 1.2 (ou plus tard), ainsi que dans les navigateurs Mozilla 1.0.2 (ou version ultérieure) support préchargement. Cela inclut Firefox et Netscape 7.01+. Camino construit à partir de Mars 2003 reposent sur Mozilla 1.0.1, et donc ne prennent pas en charge préchargement. Testez votre navigateur pour voir si elle prend en charge le préchargement des liens.