Normalement les fichiers css sont placés à l’intérieur de , que se passe-t-il si je l’ai mis à l’intérieur
, quelle différence il fera ?
Réponses
Trop de publicités?Juste pour ajouter à ce jdelStrother a mentionné à propos de w3 spécifications et ARTstudio sur navigateur rendu.
Il est recommandé parce que quand vous avez le CSS a déclaré avant d' <body>
commence, vos styles, a en fait déjà chargé. Donc très rapidement aux utilisateurs de voir quelque chose apparaître sur leur écran (par exemple, les couleurs de fond). Si non, les utilisateurs de voir le vide de l'écran pendant un certain temps avant que le CSS atteint l'utilisateur.
Aussi, si vous laissez les styles quelque part en <body>
, le navigateur a à nouveau le rendu de la page (nouveaux et anciens lors du chargement) lorsque les styles déclarée a été analysée.
La tête est conçu pour (Citant le W3C):
"des informations sur le courant document, comme son titre, mots-clés qui peut être utile pour les moteurs de recherche, et d'autres données qui n'est pas considéré comme le contenu du document"
Voir la structure Globale d'un document HTML. Que CSS n'est pas le contenu du document, il devrait être dans la tête.
Aussi toutes les autres développeur Web va s'attendre à voir s'il en existe, afin de ne pas confondre les choses en les mettant dans le corps, même si elle fonctionne!
La seule CSS, vous devriez mettre dans le corps est du CSS, mais j'ai l'habitude d'éviter les styles en ligne.
Mettre les feuilles de style dans l'en-TÊTE permet le rendu de la page progressivement.
Front de fin d'ingénieurs qui se soucie de la performance souhaitez qu'une page se charge progressivement; c'est, nous voulons le navigateur pour afficher ce contenu, il a dès que possible. Ceci est particulièrement important pour les pages avec beaucoup de contenu et pour les utilisateurs de connexion Internet lente. L'importance de donner aux utilisateurs un retour visuel, tels que les indicateurs de progrès a été bien étudié et documenté. Dans notre cas, la page HTML est l'indicateur de progression! Lorsque le navigateur charge la page progressivement l'en-tête, la barre de navigation, le logo du haut, etc. tous servent la rétroaction visuelle pour l'utilisateur qui est en attente pour la page. Cela améliore l'expérience globale de l'utilisateur.
Le problème de mettre des feuilles de style en bas du document est qu'il interdit rendu progressive dans la plupart des navigateurs, y compris Internet Explorer. Ces navigateurs bloquent rendu pour éviter d'avoir à redessiner les éléments de la page si leurs styles. L'utilisateur est bloqué l'affichage d'une page vierge.
La spécification HTML stipule clairement que les feuilles de style doivent être inclus dans l'en-TÊTE de la page: "Contrairement à, [LIEN] ne peut apparaître que dans la section HEAD d'un document, mais il peut apparaître à n'importe quel nombre de fois." Aucune des solutions de rechange, l'écran blanc vide ou le flash de non stylé contenu, sont à la peine le risque. La solution optimale est de suivre la spécification HTML et le chargement des feuilles de style dans le document de la TÊTE.
Les standards (HTML 4.01: l'élément de style), spécifie clairement que le style de la balise n'est autorisé à l'intérieur de la balise head. Si vous mettez les balises de style dans la balise body les navigateurs vont essayer de faire le meilleur de lui de toute façon, si c'est possible.
Il est possible qu'un navigateur serait ignorer une balise style dans le corps si vous spécifiez une stricte type de document. Je ne sais pas si un navigateur courant de cela, mais je ne voudrais pas compter sur toutes les versions futures de l'être détendu au sujet de l'endroit où vous placez l'élément de style.