divmagic Make design
SimpleNowLiveFunMatterSimple
Mehr CSS auszuliefern kann tatsächlich die Leistung verbessern – GitHub's kontraintuitive Entdeckung
Blogs›CSS›Mehr CSS auszuliefern kann tatsächlich die Leistung verbessern – GitHub's kontraintuitive Entdeckung
CSS

Mehr CSS auszuliefern kann tatsächlich die Leistung verbessern – GitHub's kontraintuitive Entdeckung

DivMagic
DivMagic TeamSeptember 29, 2026
9 min read

Mehr CSS auszuliefern kann die Performance tatsächlich verbessern – die überraschende Entdeckung von GitHub

Als GitHub-Ingenieure die Optimierung des Largest Contentful Paint (LCP) ihrer Website angingen, stießen sie auf eine Erkenntnis, die herkömmliche Frontend-Weisheiten auf den Kopf stellt: mehr CSS auszuliefern kann Ihre Website tatsächlich schneller machen. In einem detaillierten Beitrag auf dem GitHub-Blog erklärte das Team, wie sie die Seitenperformance verbesserten, indem sie kritisches CSS inline einbetteten und zusätzliche Styles direkt auslieferten, anstatt sie aufzuschieben. Dieser Artikel beleuchtet ihren Ansatz, die Logik hinter „mehr CSS, weniger Wartezeit“ und was das für moderne Web-Performance-Strategien bedeutet. Wir zeigen auch, wie Tools wie DivMagic es Ihnen ermöglichen, solche UI- und Stil-Optimierungen in Sekundenschnelle zu studieren und zu replizieren – ganz ohne Rätselraten.

27%
reduction in Largest Contentful Paint for GitHub.com after the optimization

Das Performance-Paradoxon: Wie weniger CSS teurer sein kann

Historisch gesehen raten Performance-Guides dazu, die CSS-Größe zu reduzieren: minifizieren, ungenutzte Styles entfernen, Bundles aufteilen und asynchron laden. Die Logik ist nachvollziehbar: Weniger Bytes bedeuten schnelleren Download. Aber die Analyse von GitHub deckte versteckte Kosten auf: render-blockierendes Verhalten und Layout-Verschiebungen , die durch spät geladenes CSS verursacht werden. Wenn kritische Styles nicht sofort verfügbar sind, rendert der Browser unvollständige Layouts und führt nach Eintreffen der Styles ein erneutes Rendering durch. Diese Verzögerung verschiebt den LCP und sorgt für eine negative Benutzererfahrung.

Durch das direkte Inline-Einbetten von mehr CSS in den <head> eliminierte GitHub den Netzwerk-Roundtrip für die Styles, die für die ersten sichtbaren Inhalte essenziell sind. Die gesamte CSS-Last nahm zu, aber der Critical Path schrumpfte dramatisch. Der LCP fiel in ihren gemessenen Verbesserungen von 10,2 s auf 3,4 s – ein Gamechanger für SEO und Benutzerzufriedenheit.

Githubs Ansatz dekonstruiert: Mehr CSS, früher

Der GitHub-Blogbeitrag führt durch eine Reihe von Experimenten. Frühe Versuche teilten CSS in kritisches (inline) und nicht-kritisches (asynchron geladenes) auf. Messungen zeigten, dass asynchrones Laden immer noch einen sichtbaren Flash of Unstyled Content verursachte und den Browser zwang, Stil und Layout neu zu berechnen, sobald das vollständige CSS eintraf. Das Team verlagerte dann mehr CSS in den Inline-Block, lieferte im Wesentlichen eine größere anfängliche CSS-Last aus, und stellte fest, dass der Browser das endgültige Layout in einem Durchlauf rendern konnte. Während die Download-Größe zunahm, verbesserten sich die Metriken für First Paint, First Contentful Paint und LCP.

plans, design, web design, designer, desk, document, drawing, iphone, notebook, paper, pen, sketching, design, design, web design, web design, web design, web design, web design, designer

Messung der realen Auswirkungen

GitHub berichtete die folgenden Metriken für eine repräsentative Seite nach der Auslieferung von mehr CSS:

MetricBefore (async CSS)After (inline all)Improvement
LCP10.2s3.4s67% faster
First Contentful Paint5.1s1.8s65% faster
CSS payload12 KB35 KB3x larger

Beachten Sie, dass sich die CSS-Last verdreifachte, während sich die wichtigen Paint-Timings um über 60% verbesserten. Die Erkenntnis: Bandbreite ist billig; Layout-Neuberechnungen sind teuer.

„Das beste CSS ist das, das der Browser hat, sobald er beginnt, die Seite zu malen – selbst wenn das bedeutet, mehr davon zu senden.“

Warum Inline-CSS separaten Stylesheets überlegen ist – selbst für „nicht-kritische“ Styles

Um den Erfolg von GitHub zu verstehen, müssen wir analysieren, was passiert, wenn ein Stylesheet asynchron geladen wird:

  • Der Browser beginnt mit dem Rendern ohne vollständigen Stilkontext und verlässt sich oft auf das Standard-CSS.
  • Sobald das asynchrone CSS heruntergeladen ist, wird das CSS-Objektmodell neu aufgebaut.
  • Der Browser berechnet dann das Layout neu und malt die gesamte Seite neu, wobei er möglicherweise Elemente verschiebt.
  • Diese Verschiebung löst zusätzliche Layout-Durchläufe für abhängige Ressourcen (Bilder, Schriften) aus.
  • Der gesamte Prozess verzögert den Moment, in dem sich das größte sichtbare Element endlich setzt, und verschiebt den LCP noch weiter nach hinten.

Durch das Inline-Einbetten einer großzügigen Menge an Styles stellt GitHub sicher, dass der erste Paint des Browsers in 90 % der Fälle bereits das endgültige Layout enthält. Die zusätzlichen Kilobyte – selbst nach dem Wachstum nur wenige Dutzend KB – sind bei modernen Verbindungen vernachlässigbar. Im Gegensatz dazu kann das Layout-Thrashing durch asynchrones CSS Hunderte von Millisekunden kosten.

Wann wird „mehr CSS“ zu viel?

GitHub hat nicht ihr gesamtes 200 KB Design-System inline eingebettet. Sie haben sorgfältig Styles ausgewählt, die den Above-the-Fold-Inhalt sowie alle Komponenten betreffen, die bei später Stilgebung Layout-Verschiebungen verursachen könnten. Mithilfe der Coverage-Analyse in Chrome DevTools identifizierten sie, welche CSS-Regeln in den ersten zwei Sekunden verwendet wurden, und priorisierten diese. Das Ergebnis ist ein pragmatischer Mittelweg: genug Inline-CSS, um Reflows zu eliminieren, aber nicht so viel, dass das HTML-Dokument unangemessen aufgebläht wird.

Extraktion von kritischem CSS: Traditionelle Tools vs. DivMagic

Entwickler verlassen sich typischerweise auf Tools wie Critical, purifycss oder manuelle Extraktion, um Above-the-Fold-Styles zu isolieren. Diese Ansätze erfordern sorgfältige Konfiguration, Build-Pipeline-Integration und häufige Wartung, während sich UIs weiterentwickeln. DivMagic ändert das Spiel: Es erfasst das berechnete CSS genau der Elemente, auf die Sie zeigen, direkt von der gerenderten Seite. Das bedeutet, Sie können die genauen Styles auswählen, die GitHub oder jede andere Referenzseite für ihre performancekritischen Hero-Bereiche, Navigationen, Karten und mehr verwendet.

code, html, digital, coding, web, programming, computer, technology, internet, design, development, website, web developer, web development, programming code, data, page, computer programming, software, site, css, script, web page, website development, www, information, java, screen, code, code, code, html, coding, coding, coding, coding, coding, web, programming, programming, computer, technology, website, website, web development, software

90%
of the CSS needed for a stable first paint can be identified with just a few clicks in DivMagic

Grafischer Beleg: LCP-Entwicklung über die Experimente hinweg

Githubs eigene Daten sind beeindruckend. Das folgende Diagramm veranschaulicht, wie der LCP sank, als sie von vollständig aufgeschobenem CSS zu einer aggressiven Inline-Strategie übergingen. Jeder Schritt fügte der anfänglichen Last mehr CSS hinzu.

Largest Contentful Paint (LCP) in Seconds

Der Fortschritt ist klar: Jeder zusätzliche Teil des inline-eingebetteten CSS senkte den LCP, bis ein Plateau erreicht wurde, jenseits dessen weiteres Inline-Einbetten abnehmende Erträge brachte. Dieser Sweet Spot ist genau das, was jedes Team anstreben sollte – nicht blind alles inline einzubetten, sondern systematisch die Styles einzubeziehen, die am wichtigsten sind.

Was das für die „Mobile First“- und Core Web Vitals-Ära bedeutet

Googles Core Web Vitals legen Wert auf LCP, First Input Delay (FID) und Cumulative Layout Shift (CLS). Die Technik von GitHub greift LCP und CLS gleichzeitig an: mehr CSS von Anfang an bedeutet früheres Rendern des größten Elements und weniger Layout-Verschiebungen später. Für E-Commerce-, Nachrichten- und Dokumentationsseiten kann dies den Unterschied zwischen einem bestandenen und einem nicht bestandenen CWV-Score ausmachen.

insect, spider web, spider, close up, macro, species, spider web, spider web, spider web, spider web, spider web, spider, spider

3.4s
post-optimization LCP lands firmly in the 'Good' range of Core Web Vitals

Entscheidend ist, dass diese Methode keine vollständige Neuschreibung erfordert. Das GitHub-Team hat inkrementelle Änderungen an seiner bestehenden servergerenderten Architektur vorgenommen. Sie können damit beginnen, Ihr aktuelles LCP-Element zu überprüfen und die Styles, die es direkt beeinflussen, inline einzubinden. DivMagic hilft Ihnen, genau diese Styles und ihre Abhängigkeiten schnell von einer Live-Produktionsseite zu sammeln, sodass Sie innerhalb weniger Minuten einen Prototyp eines Inline-Blocks erstellen können.

Das Trade-off-Spektrum: Größe vs. Geschwindigkeit

Es gibt keine Patentlösung; die optimale Menge an Inline-CSS hängt von den Netzwerkbedingungen Ihrer Nutzer und der Komplexität Ihres Layouts ab. Das folgende Diagramm zeigt einen konzeptionellen Zusammenhang: Wenn Sie dem anfänglichen Download mehr CSS hinzufügen, nimmt die Download-Größe zu, aber das Rendering wird schneller und stabiler – bis zu einem gewissen Punkt.

Trade-offs: CSS Size vs Paint Timings

Das Ziel besteht darin, die absteigende Kurve der Rendering-Zeitachse zu nutzen, ohne die HTML-Größe unnötig aufzublähen. Der Engineering-Blog von GitHub empfiehlt, das Dokument-Payload sorgfältig zu überwachen und ein Budget festzulegen – für sie waren 30-40 KB Inline-CSS die richtige Menge. Ihr Budget mag anders aussehen, aber die Methode ist universell.

Praktische Schritte, um GitHubs Erfolg zu wiederholen

  1. Identifizieren Sie Ihr LCP-Element. Nutzen Sie Lighthouse oder WebPageTest, um herauszufinden, welches DOM-Element zu Ihrem LCP-Score beiträgt.
  2. Extrahieren Sie die vollständige Style-Kette. Öffnen Sie DivMagic auf Ihrer Seite, wählen Sie das LCP-Element aus und kopieren Sie das vollständige CSS, einschließlich geerbter Styles und Custom Properties. Das liefert Ihnen ein robustes Starter-Set.
  3. Binden Sie diese Styles inline in <head> ein. Testen Sie lokal oder in einer Staging-Umgebung, wobei das kritische CSS direkt vor allen externen Stylesheet-Referenzen eingefügt wird.
  4. Messen Sie die Paint-Zeiten. Vergleichen Sie LCP, FCP und CLS vorher und nachher. Erweitern Sie den Inline-Block schrittweise, um mehr Above-the-Fold-Komponenten abzudecken, bis sich die Verbesserungen abflachen.
  5. Automatisieren Sie für dynamische Seiten. Nutzen Sie serverseitige Logik, um das Inline-CSS pro Seitentyp einzufügen, und stützen Sie sich dabei auf die Muster, die Sie mit DivMagic entdeckt haben.

Die Rolle von HTTP/2 und modernen Protokollen

Man könnte argumentieren, dass HTTP/2-Multiplexing das Laden vieler kleiner Dateien kostengünstig machen und den Bedarf an Inlining verringern sollte. Das stimmt zwar, aber der render-blockierende Charakter von CSS bleibt bestehen: Selbst wenn die Stylesheet-Anfrage parallel abgesetzt wird, muss der Browser dennoch warten, bis es heruntergeladen, geparst und das CSSOM aufgebaut ist, bevor er ein davon abhängiges Paint ausführen kann. Inlining umgeht den gesamten Lebenszyklus der Netzwerkanfrage und spart so kritische Millisekunden, insbesondere bei mobilen Verbindungen mit hoher Latenz.

Wie DivMagic Ihren Critical-CSS-Workflow optimiert

DivMagic ist eine Browser-Erweiterung, mit der Sie auf beliebige UI-Elemente klicken und sofort das exakte CSS kopieren können. Für performanceorientierte Entwickler bedeutet das:

  • Genau zu sehen, welche Styles eine hochperformante Website wie GitHub für ihr LCP verwendet.
  • Diese Styles in wiederverwendbare Code-Snippets umzuwandeln, ohne die DevTools zu öffnen.
  • Das CSS als Tailwind, CSS-Module oder reines CSS zu exportieren, bereit zum Inlinen.
  • Schneller zu iterieren: Sie können mehrere Referenzseiten untersuchen und deren beste Muster kombinieren.
2x
faster critical CSS generation by eliminating manual extraction

Da DivMagic die berechneten Styles kopiert, müssen Sie nicht herausfinden, in welcher Stylesheet-Datei eine Regel lebt, und sich auch keine Gedanken über Vererbungsketten machen. Die Ausgabe ist genau das, was der Browser anwendet – perfekt, um einen Inline-Block zu erstellen, der dem endgültigen Layout entspricht.

Fazit: Verlernen, um Web-Performance neu zu lernen

GitHubs Erfahrung erinnert uns daran, dass es bei Performance nicht darum geht, Ressourcen dogmatisch zu minimieren, sondern die Wahrnehmung von Geschwindigkeit durch den Nutzer zu optimieren. Mehr CSS auszuliefern – wenn es durchdacht erfolgt – beseitigt kostspielige Reflows und liefert eine visuell vollständige Seite schneller. Wenn Ihnen das nächste Mal gesagt wird: „Reduzieren Sie die CSS-Größe“, fragen Sie stattdessen: „Welches CSS sollte der Browser vom allerersten Byte an haben?“

„Bei Performance geht es nicht darum, weniger auszuliefern, sondern die richtigen Dinge zur richtigen Zeit.“

Mit DivMagic wird das Erfassen dieses „richtigen CSS“ zu einer trivialen Angelegenheit – Sie können sich ganz darauf konzentrieren, was wirklich den Unterschied macht: schnellere Paints, zufriedenere Nutzer und bessere Core-Web-Vitals-Werte.

Beginnen Sie noch heute mit der Erstellung mit DivMagic

Schließen Sie sich über 10.000 Entwicklern, Designern und Geschäftsinhabern an, um Code von jeder Website zu kopieren und ihn in ihren eigenen Projekten zu verwenden.

Get DivMagic for 42% off

Limited time deal for 22:45