CSS Code organisieren und Ladegeschwindigkeit optimieren

psd zu html | codingpeople - webdesign trifft html - 20% Rabatt für alle Neukunden

CSS Code organisieren und Ladegeschwindigkeit optimierenCSS Code organisieren - Wer Webseiten wie Blogs oder auch Online-Shops erstellt, egal ob im Frontend- oder Backend-Bereich wird unabhängig von den vorherrschenden Standards und Vorgaben durch die Aufgabenstellung seinen Stil haben, Code zu schreiben und zu bearbeiten. Ein ausschlaggebender Grund hierfür ist die Übersicht des Codes und selbst die empfindet nicht jeder Entwickler gleichermaßen. Neben der eigentlichen Strukturierung von CSS-Code steht hierbei oftmals die Frage der Darstellung der einzelnen CSS-Regeln im Vordergrund der Diskussion. Genauer gesagt, die beiden Varianten die hierbei Anwendung finden können - Einzeilig- & Mehrzeiligkeit.

Modernes Webdesign mit CSS - Das neue Buch!

Dank CSS-Komprimierung zu einer schnelleren Ladegeschwindigkeit von Webseiten

Übersichtlicher und besser wartbar ist der mehrzeilig geschriebene CSS-Code. Je nach steigender Dateigröße ist allerdings die mögliche Einsparung aufgrund einer Optimierung der CSS-Datei bei einer solchen Schreibweise bspw. durch eine Komprimierung durch ein Online-Tool entsprechend hoch. Diese kann dann unter Umständen, auch zu schnelleren Ladezeiten führen, einen "Nebeneffekt" den jeder Webseitenbesitzer sicherlich gerne mitnimmt. Und auch die Suchmaschinen haben garantiert nichts gegen diesbezüglich optimierte Webseiten.

Ein Argument welches bei der einzeiligen Schreibweise von CSS-Code genannt wird, ist die schlechte Übersicht und Lesbarkeit der CSS-Eigenschaften und ihrer Werte. Allerdings frage ich mich, warum dieses Argument in entsprechenden Diskussionen oder Kommentaren in Blogs zu diesem Thema überhaupt erst fällt? Denn ein komprimiert vorliegender CSS-Code sollte nicht Grundlage für Weiterentwicklungen sein, es sei denn man ändert lediglich den ein oder anderen Wert, den man im Code trotz Komprimierung auch ohne Probleme ausfindig machen kann.

CSS Code organisieren - Mehrzeilig und Einzeilig
Abb.1 - CSS Code organisieren - Mehrzeilig (oben) und Einzeilig (unten)

Komprimierter CSS-Code, wie im unteren Teil der Abbildung 1, ist für die Webseitenbesucher die die entsprechenden Dateien beim Laden der Webanwendung aufrufen und somit für die Darstellung des hoffentlich fehlerfreien Designs und nicht zum Arbeiten gedacht! Schon gar nicht, wenn mehr als eine Person an den entsprechenden Dateien arbeiten sollte. Das Argument der schlechten Übersicht und Wartbarkeit von komprimierten Dateien, kann man somit getrost ad acta legen.

Die empfohlene Herangehensweise

Auch wenn, wie Vladimir "Perun" Simovic in einem aktuellen Beitrag schreibt, unterschiedliche Vorgehensweisen auf einer Reihe verschiedener Entwicklungsumgebungen existieren, ist es wesentlich komfortabler für diejenigen die mit den CSS-Dateien arbeiten müssen, an mehrzeiligen CSS-Code ( wie im oberen Teil der Abbildung 1) Änderungen oder Neuerungen vornehmen zu können als an einzeiligen CSS-Code. Die so den Anforderungen entsprechend umgesetzten Dateien, können dann getrost je nach Komprimierungsverfahren optimiert werden und diese Dateien dann auf die entsprechenden Server geladen werden.

Achtung! Traue niemals einem (Online-)Komprimierungstool oder einem Script zur Komprimierung blind. Das heißt, erst die Anwendung mit der komprimierten Version testen, bevor es live geht! Somit dürfte auch die Frage ob Kommentare bspw. zu CSS-Hacks in CSS-Dateien vorhanden sein sollten, geklärt sein. In nicht komprimierten CSS-Dateien die bspw. auf einer Entwicklungsumgebung liegen ( bspw. zu noch ausstehenden Weiterentwicklungen ), können bzw. sollten sie sogar im Sinne einer effektiven Zusammenarbeit mit Kollegen sogar enthalten sein. In den CSS-Dateien mit Kommentaren die sich hingegen auf einer "Live-Umgebung" befinden, machen keinen Sinn. So manch unachtsamer Entwickler hat hiermit bereits unbeabsichtigterweise für den ein oder anderen Schmunzler gesorgt. Ihr glaubt nicht, was teilweise fü Kommentare in CSS-Dateien stehen ;o)

Top-10 der Lesercharts für deutschsprachige Blogs

Soweit die Theorie, aber wie sieht es in der Praxis aus? Genauer gesagt, wie gehen bspw. die Top-10 der dt. Blogger mit diesem Thema um. OK, die Schreibweisen innerhalb der CSS-Dateien interessieren die Betreiber garantiert wenig, aber die bereits angesprochene und daraus mögliche resultierende Optimierung der Ladezeiten, dürfte vor allem aufgrund des hohen Traffic-Aufkommens bei diesen Seiten nicht ganz uninteressant sein. Auch wenn die einzelnen Blogs aufgrund ihrer Zielgruppe und damit der thematischen Ausrichtung unterschiedliche Ansprüche an das Design der Webseiten bzw. Blogs haben, wurden in einem kleinen Vergleich die Anzahl der verwendeten CSS-Dateien, deren gesamte Dateigröße und die Schreibweisen der CSS-Eigenschaften ( einzeilig und oder mehrzeilig ) mittels der CSS-Extension YSlow etwas genauer unter die Lupe genommen.

CSS Code Analyse mit YSlow-Firefox Extension
Abb.2 - CSS Code Analyse mit YSlow-Firefox Extension

Aus den ermittelten Daten wird dann am Ende geschlussfolgert, ob Einsparpotential bei der Dateigröße der CSS-Dateien vorhanden ist oder nicht. Und soviel vorweg, bei einzelnen Dateien dieser Blogs beträgt das Einsparpotential bis zu 30% und mehr.

Top-10 der Lesercharts im CSS-Vergleich
Weblog Anzahl der
CSS-Dateien
Dateigröße
CSS-Dateien
CSS Schreibweise Einspar-
potential
mydealz 17 131.3KB beides ja
bildblog 9 38.1KB mehrzeilig ∗ ja
googlewatchblog 1 5.8KB einzeilig ∗∗ nein
basicthinking 3 19.8KB mehrzeilig ja
macnotes 9 68.7K einzeilig ∗∗∗ ja
apfelquak 5 19.4KB mehrzeilig ja
stefan-niggemeier 2 14.6KB mehrzeilig ja
stadt-bremerhaven 7 51.9KB beides kaum
nerdcore 3 8.9KB einzeilig nein
stylespion 8 109.7KB beides kaum

∗ Keine Verwendung von CSS Shorthand Properties innerhalb der CSS-Dateien

∗∗ Der gesamte CSS-Code wird in einer Zeile zusammengefasst! Wenn man einen Gewinner küren müsste, wäre dies der GoogleWatchBlog

∗∗∗ Der bis zu Hälfte einzeilige CSS-Anweisungen fü die Eigenschaften verfasste Code, wird ab der Hälfte mehrzeilig. Hier ist ein Update des CSS-Codes erkennbar, ebenso wie die im Anschluss daran fehlende Komprimierung dieses.

Fazit zur Organisation bzw. zur Schreibweise von CSS Code

Mehrzeiligkeit ist für diejenigen die den CSS-Code bearbeiten und der komprimierte einzeilige CSS-Code für die Webseitenbesucher. Wie ist Eure Meinung zu dieser immer noch oder wieder aktuell werdenden Diskussion?

Ähnliche Artikel zu diesem Thema:

Online Usability Tests in 24 Stunden - 39€ pro Test!

  1. Thomas 31 Mär 2010, 15:12

    Dem Fazit ist nichts hinzuzufügen! Die Diskussion darüber habe ich eh nie verstanden, Mehr- oder Einzeiligkeit hin oder her, letztendlich kommt es auf die Schreibweise an, den die CSS-Syntax auf der "Live-Umgebung" besitzt.


  2. Quantenphysiker 31 Mär 2010, 17:41

    HI super post vielen Dank. Hatte schon immer Probleme mit der Geschwindigkeit meiner Homepage. Muss ich gleich mal ausprobieren wieviel mir deine Tipps helfen


  3. Jürgen
    31 Mär 2010, 18:32

    Guter Artikel, gerade hier kann bei vielen Blogs und Websites einiges optimiert werden. Leider wird dies oft vernachlässigt, aber in Zeiten in denen Google auch die Ladegeschwindigkeit in die Bewertung mit einfliessen lässt, wird die CSS Optimierung unerlässlich.


  4. Florian Lerch
    31 Mär 2010, 23:15

    Eigentlich ja eine recht offensichtliche Sache. Man hat eine Datei auf dem Rechner, mit welcher man arbeitet. Und zum aktualisieren komprimiert man sie jedes mal und läd sie dann direkt hoch.


  5. Thomas 01 Apr 2010, 01:48

    Ich sehe keinen großen Sinn darin, CSS-Dateien auf diese Weise zu komprimieren.
    Bei aktiver GZip-Komprimierung (die in jedem Fall genutzt werden sollte) ist der Größenunterschied minimal.
    Sofern das komprimieren nicht vollautomatisch passiert, würde ich darauf zu Gunsten von GZip verzichten.


  6. Sven Wolfermann
    01 Apr 2010, 08:55

    Ich bin ein ganz klarer Verfechter dem Browser nur das zu geben, was er auch braucht, also komprimierten, wenns geht noch gezippten Code. Mehr braucht der Browser und somit der Enduser der Website nicht. Logisch ist auch, dass für die Entwicklung das Original vorgehalten wird um Änderungen durchführen zu können. Für mich persönlich ist es auch übersichtlicher die CSS-Eigenschaften einzeilig zu schreiben. Die Performance wird in Zukunft eine größere Rolle beim Suchmaschinenranking einnehmen und da sollte man doch Potenziale ausschöpfen wo es nur geht.


  7. Matti M. Matthes
    01 Apr 2010, 09:20

    Wenn man, wie ich als Freelancer, seine Projekte allein organisiert, ist eine übersichtliche und stets wiederkehrende Struktur in den CSS-Dateien sehr sinnvoll. Mit den von mir verwendeten Systemen (z.B. Joomla, WordPress, früher auch YAML etc.) wurden (und werden) im Original auch immer unterschiedliche CSS-Dateistrukturen ausgeliefert.

    Für diese habe ich mir vor gut 2 Jahren eine eigene Grundstruktur entwickelt, die dann den individuellen Projektanforderungen und Systemen angepasst wird. Dabei habe ich darauf geachtet, dass die den Dateien zu Grunde liegende Logik auch meiner Arbeitsweise entspricht. Ich wollte mich hier "wohlfühlen" und setze zudem auf einzeiligen Code. Inzwischen hat sich der Prozess verselbständigt und bietet mir den schnellen Zugriff bei Korrekturen, Änderungen aber auch Neuentwicklungen.

    Die Phase einer solchen Umstellung ist zwar komplex und manchmal auch mühselig, aber aus meiner Erfahrung sehr empfehlenswert.


  8. Holdem 01 Apr 2010, 10:22

    Vielen Dank für die ausführliche Darstellung. Als Nicht-Fachmann ist es wirklich schwierig diese Thematik zu verstehen. Hab meine Seite von jemanden erstellen lassen, möchte mich jedoch jetzt selbst darum kümmern. Bezüglich der Optimierung der Schnelligkeit meiner Seite, werden mir diese Tipps sehr weiter helfen.


  9. Onassis 01 Apr 2010, 16:50

    Ich habe vor einem Jahr die zwei "Zwangsbücher" Little Boxes 1 und 2 durchgearbeitet, als ich meine Webseite erstellt habe.

    Dort im Buch war das CSS natürlich extrem ausführlich geschrieben und übersichtlich.
    Und genau so habe ich es auch übernommen und alles so ordentlich wie möglich zusammengebaut.

    Viele Überschriften, Erklärungen und sonstige Informationen.

    Ich denke auf 1-2 Sekunden längere Ladezeit kommt es dann auch nicht mehr an.

    Es stellt sich die Frage: Ist es besser den html-code zu optimieren für die LAdezeit oder das Css zur Seite?

    Onassis


  10. Webstandard-Team
    01 Apr 2010, 17:00

    @Onassis: Optimierung und Komprimierung lohnt sich in jeglicher Hinsicht, auch bei HTML-Code. Dieser Beitrag hier zielt aber lediglich auf den Umgang mit CSS-Code hin.


  11. egon 01 Apr 2010, 17:19

    nahezu jedes jpeg icon ist größer als die meisten css-files.
    ich denke nicht, dass man deswegen einzeilige Styles definieren müsste.


  12. mac 02 Apr 2010, 21:35

    Ich sehe das wie egon, besser sauberes HTML, css ist normalerweise eh sehr klein...


  13. Paul 07 Apr 2010, 12:28

    Optimierung fängt für mich immer beim Inhalt der Seite an. Der redundante Kram der in vielen Blogs etc. drinsteckt lässt sich doch durch CSS- und sonstige technische Optimierung gar nicht ausgleichen.


  14. Quantenphysiker 10 Apr 2010, 09:22

    hmm kann mich egt meinen beiden Vorrednern nur anschliessen. Viel wichtiger als aufgeräumtes CSS ist doch aufgeräumtes html und strukturierter Inhalt. Hat man das Perfektioniert kann man natärlich einen Blick auf die CSS Struktur werfen aber die is bei mir sowieso immer schon relativ ordentlich im Vergleich beispielsweise zur HTML Struktur.


  15. Sören 10 Apr 2010, 12:32

    Ich sehe das eigentlich genauso! Die CSS-Struktur ist natürlich schon wichtig, aber wenn der Content und die HTML-Struktur nicht stimmt, dann kann man mit CSS auch nicht mehr viel raus reißen.

    Gruß Sören


  16. CSS Ratte 24 Mai 2010, 18:46

    Muss mich meinem Vorredner anschließen. Wer die Ladezeit optimieren will sollte dies im PHP und HTML Code tun. Wenn man die CSS Datei richtig auslagert, ist die Ladezeit zuvernachlässigen. (Cache)

    Gerade Dynamisch erzeugte Seiten haben Problem mit der Perfomance wegen der Datenbankanbindung und dem PHP Code. Das Zauberwort heißt da (My)SQL Index.

    Gruß CSS Ratte


Artikel kommentieren





XHTML ist erlaubt und ausdrücklich erwünscht, wobei folgende Tags eingesetzt werden können: <a href="" title=""> <abbr title=""> <b> <cite> <code> <em> <i> <strike> <strong>


authimage

Modernes Webdesign mit CSS - Das neue Buch!