Verwendung des CSS Me Not Bookmarklets zum Anzeigen (und Deaktivieren) von CSS-Dateien

Avatar of Chris Coyier
Chris Coyier am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

Stoyan hat absolut Recht. So sehr wir CSS auch lieben, es ist immer noch ein wichtiger Faktor dafür, wie Websites geladen werden, und weniger davon zu verwenden, ist eine gute Sache. Er hat ein neues, nettes Bookmarklet namens CSS Me Not entwickelt, um unnötige CSS-Dateien zu diagnostizieren, aber dazu kommen wir gleich.

Das [Problem] ist, dass CSS im kritischen Pfad liegt, es blockiert das Rendering und oft sogar die JavaScript-Ausführung. Wir lieben CSS, es ist Magie, es kann unglaubliche Dinge tun, defekte UIs beheben und Bilder manipulieren und erstaunliche Bilder zeichnen. Wir lieben CSS. Wir wollen einfach… weniger davon, wegen seiner von Natur aus blockierenden Art.

Manchmal verwenden unsere Websites *ganze Stylesheets*, die einfach unnötig sind. Ich gebe es nur ungern zu, aber WordPress ist hier berüchtigt und lädt Stylesheets für Plugins und Blöcke, die Sie vielleicht gar nicht wirklich verwenden. Diese Situation befinde ich mich auf dieser Website gerade. Ich habe einfach noch keine Zeit gefunden, ein paar kleine, unnötige Stylesheets auszusortieren.

Stoyan hat ein schnelles Bookmarklet namens CSS Me Not erstellt, um all diese CSS-Dateien anzuzeigen. Der große Vorteil ist natürlich, dass es Ihnen zeigt, womit Sie es zu tun haben.

Sie könnten diese Stylesheets auch in DevTools finden, aber das CSS Me Not Bookmarklet macht es besonders einfach und hat eine herausragende Zusatzfunktion: **das Ausschalten dieser Stylesheets.** Beim Testen des Bookmarklets hier auf CSS-Tricks sehe ich vier Stylesheets, die WordPress lädt (wegen Einstellungen und Plugins), von denen ich weiß, dass ich sie nicht brauche.

Screenshot of a Chrome browser window showing the CSS Me Not bookmarklet circled in red just below the address bar, Below that is a table injected above the CSS-Tricks website showing six stylesheets including an action to disable a sheet, the sheet's media, the sheet's host, and the sheet's name.

Wenn Sie dies stattdessen in DevTools tun möchten, könnten Sie Ihre Netzwerkanfragen nach CSS filtern, das Stylesheet finden, das Sie ausschalten möchten, mit der rechten Maustaste darauf klicken, es blockieren und neu laden.

DevTools window screenshot with the Network panel open and the select menu open on a listed stylsheet with the option to block the request URL highlighted in bright blue.

Ich bekämpfe diesen Kampf schon seit Ewigkeiten und entferne Skripte und Stile in WordPress, die ich nicht möchte.

Das Entfernen von komplett ungenutzten Stylesheets ist ein klarer Gewinn, aber es gibt das kniffligere Problem, ungenutztes CSS zu entfernen. In diesem Beitrag erwähne ich den einzig wahren Weg, um wirklich zu wissen, ob ein bestimmtes CSS ungenutzt ist: das Anhängen eines background-image an jeden Selektor und das anschließende Überprüfen der Serverprotokolle nach einer angemessenen Produktionszeit, um zu sehen, welche dieser Bilder nie angefordert wurden. Stoyan bestätigt meine Geschichte hier.

UnCSS ist sozusagen ein "Labor". Die "reale Welt" kann überraschen. Ein Trick, den wir bei SomeCompany Inc. angewendet haben, war, alle CSS-Deklarationen zur Build-Zeit zu instrumentieren, wobei jeder Selektor ein 1×1 transparentes Hintergrundbild erhielt. Dann wühlten wir nach einer Woche oder so in den Serverprotokollen, um zu sehen, was tatsächlich verwendet wird.