Zumindest aus Sicht des W3C gibt es einen Unterschied.
Ein <style>Element führt einen Block von CSS-Regeln ein, die für das aktuelle Dokument gelten. Externe Stylesheets werden jedoch tatsächlich als ganze Dokumente betrachtet, die sich auf die aktuelle Seite beziehen , und Benutzeragenten können solche Dokumente je nach typeund mediaAttributen des Links ignorieren . Zum Beispiel:
<link rel="stylesheet" type="text/css" media="screen" href="screen.css" />
<link rel="stylesheet" type="text/css" media="print" href="print.css" />
In dieser Situation folgen Benutzeragenten normalerweise nur einem der Links, entweder dem screeneinen (für normales Rendern) oder dem printeinen (zum Drucken). Die Idee war, die Bandbreite zu erhalten, indem nur die entsprechende Ressource heruntergeladen wurde, anstatt alles abzurufen und später nach dem Medientyp zu filtern.
Dies wird in der Spezifikation erwähnt:
Wenn das LINKElement ein externes Stylesheet mit einem Dokument verknüpft, gibt das
typeAttribut die Stylesheet-Sprache und das media
Attribut das beabsichtigte Rendering-Medium oder Medium an. Benutzeragenten können Zeit sparen, indem sie nur die Stylesheets aus dem Netzwerk abrufen, die für das aktuelle Gerät gelten.
<style type="text/css">@import url("style.css");</style>.