76 votes

Pourquoi <script src="min.js"></script> mais <link rel="stylesheet" href="min"> pourquoi pas <style href="min.css"></style>

Mon parent qui a commencé à apprendre le développement Web m'a posé cette question.

Pourquoi <script src="min.js"></script> mais <link rel="stylesheet" href="min.css"> pourquoi pas <style href="min.css"></style> pourquoi nous utilisons la balise link pour ajouter des fichiers CSS externes à la page, mais lorsque nous lions des liens css à la page mais on utilise <style>...</style> quand on écrit css dedans <head> ?

Je lui ai dit que c'est à cause de la spécification. Y a-t-il d'autres informations à lui donner?

45voto

Xaerxess Points 10324

C'est historique... coïncidence? Vous pouvez lui recommandons de lire la partie sur le Passé de diveintohtml5.infooù il y a quelques histoires intéressantes, effectivement mail correspondances, entre les développeurs web. Les développeurs Web signifie qu'ils ont été, en fait, le développement du Web, nous voyons aujourd'hui ;)

I. e. <img> balise nous sont utilisés pour:

<IMG SRC="file://foobar.com/foo/bar/blargh.xbm">

pourrait être:

<ICON name="NoEntry" href="http://note/foo/bar/NoEntry.xbm">

ou

<A HREF="..." INCLUDE>See photo</A>

ou

<INCLUDE HREF="...">

mais enfin, les développeurs ont décidé de coller avec de la <img>, ce qui a déjà été mis en œuvre:

Nous ne sommes pas prêts à soutenir INCLURE/INCORPORER à ce point. ... Nous sommes donc il va probablement aller avec (pas l'ICÔNE, puisque pas tous les inline images peuvent être utilement des icônes). Pour le moment, inline les images ne seront pas explicitement le type de contenu avais; en bas de la route, nous plan de soutien (ainsi que l'ensemble de l'adaptation de MIME). En fait, la lecture de l'image routines nous sommes actuellement à l'aide de la figure de sortir le format de l'image à la volée, de sorte que l'extension de nom de fichier ne sera même pas significative.

Je ne sais pas de réponse directe à votre question, mais je suis assez curieux <link> balise trop. Trouver la réponse serait probablement inclure certains des archives web de creuser.

27voto

Frédéric Hamidi Points 123646

Il y a une différence, au moins à partir de la W3C point de vue.

Un <style> élément introduit un bloc de règles CSS qui s'appliquent à ce document. Cependant, les feuilles de style externes sont effectivement considéré comme l'ensemble des documents liés à la page en cours, et les agents utilisateurs sont libres d'ignorer ces documents, en fonction de l' type et media attributs du lien. Par exemple:

<link rel="stylesheet" type="text/css" media="screen" href="screen.css" />
<link rel="stylesheet" type="text/css" media="print" href="print.css" />

Dans cette situation, les agents utilisateurs généralement de suivre l'un des liens, soit l' screen (pour rendu normal) ou l' print d'un (pour l'impression). L'idée était de préserver la bande passante en téléchargement uniquement la ressource appropriée, au lieu de chercher tout et de filtrage sur le type de média plus tard.

Ceci est mentionné dans le cahier des charges:

Lorsque l' LINK élément liens d'une feuille de style externe à un document, le type attribut spécifie le langage de feuilles de style et l' media attribut spécifie le but de rendu des moyennes ou des médias. L'utilisateur les agents peuvent gagner du temps par la récupération de la connexion au réseau ceux de style les feuilles qui s'appliquent à l'appareil actuel.

4voto

Peter Olson Points 30452

Ils ont tous les deux un principe identique de sens, et vous avez repéré une sorte d'incohérence dans le HTML. La cause de ceci est que les normes sont fondées sur les implémentations des différents navigateurs. Les différents navigateurs est venu avec les attributs dans les différentes balises, et le W3C a décidé de garder certains des incohérences dans le but de maintenir la rétro compatibilité.

Les éléments qui utilisent src: script img iframe input video frame

Les éléments qui utilisent href: a link base

1voto

Edgar Points 1621

Cela pourrait expliquer des choses, je suppose: http://www.w3.org/TR/html4/struct/links.html

1voto

Rocket Hazmat Points 87407

La balise <link> est utilisée pour "lier" d'autres documents au document actuel et décrire sa relation, ou rel , avec elle.

Vous pouvez également utiliser <link> pour lier d'autres éléments au document. Par exemple, favicons:

 <link rel="shortcut icon" href="favicon.ico" />
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X