Der Martin: Strategie zum laden von CSS/JS

Beitrag lesen

Mahlzeit,

Ich möchte die Vorteile eines style-Elements im html (weniger Requests) mit den Vorteilen des externen CSS (Browser Caching) verbinden. Die meisten deiner Einwände sollten sich vor diesem Hintergrund erübrigt haben.

nein, keineswegs, und ich glaube, ich hatte es auch durchaus richtig verstanden. Nur kann ich nicht nachvollziehen, dass du an Symptomen "optimieren" willst, die so minimal sind, dass sie im allgemeinen Rauschen untergehen. Und noch dazu willst du für derartige Micro-Optimierungen die Validität des Dokuments aufgeben (so sie denn überhaupt gegeben ist).

Hier mal eine Seite, die ganz am Ende in Dokument noch ein style-Element verwendet: https://www.was-soll-ich-schenken.net/ Die Seite läd sogar außergewöhnlich schnell. Wenn's funktioniert, funktioniert's.

Browser sind fehlertolerant. Vieles, was nicht erlaubt ist, funktioniert trotzdem. Für mich trotzdem kein Grund, bewusst fehlerhafte Dokumente zu bauen.

Das ist kontraproduktiv. Die Einsparung eines Requests pro Seitenaufruf in allen Ehren, aber damit steigt für dich der Pflegeaufwand. Denn die Wahrscheinlichkeit ist doch sehr groß, dass wesentliche Teile des Stylesheets für alle Seiten deiner Website gleich sind. Hier würde ich die Wartungsfreundlichkeit höher ansetzen als ein paar Zehntelsekunden wegen eines weiteren Requests - abgesehen davon, dass das Stylesheet bei weiteren Aufrufen dann schon im Browser-Cache wäre und überhaupt nicht mehr geladen werden muss. Da du ja schon selbst erkannt hast, dass ich mit "inline" ein zentrales style-Element meinte und kein Style Attribut (nochmals sorry), macht deine Aussage nicht wirklich Sinn.

Nein? Ist es nicht einfacher, ein externes Stylesheet zu pflegen, das in allen Dokumenten eingebunden wird, als den style-Block in, sagen wir, einem Dutzend HTML-Dokumenten zu editieren?

  1. Falls es weitere Seitenaufrufe durch denselben Benutzer gibt (mittels Session Variable oder Cookie ermitteln???), gebe ich das CSS nur noch als externes Script im head aus (kein inline und kein Footerscript mehr). Warum?? Oder besser: Warum nicht von Anfang an so? Weil meine Methode beim erstmaligen Seitenaufruf schneller läd (hoffe ich jedenfalls).

In der Theorie, ja. Vielleicht auch in der Praxis. Aber die zwei bis drei Zehntelsekunden wird vermutlich niemand bemerken.

Ich werd es mal auf einer Testseite ausprobieren. Bliebe zuletzt aber noch die Frage bei welchem Prozentsatz der User das Browsercaching fehlschlägt.

Das wird ein verschwindend geringer Anteil sein, vermute ich.

Ciao,  Martin

--
Um mit einem Mann glücklich zu werden, muss eine Frau ihn sehr gut verstehen und ein bisschen lieben. Um mit einer Frau glücklich zu werden, muss ein Mann sie sehr lieben und darf gar nicht erst versuchen, sie zu verstehen. Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(