Seite 19 von 101, insgesamt 101 Einträge

#LR16: Stolperfalle Buildscript

Die weitere Entwicklung des Blog-Themes dümpelt so vor sich hin, was vor allem damit zu tun hat, dass ich in den letzten 14 Tagen „mal eben“ eine relativ komplexe, mehrsprachige Website von einem CMS auf das andere migriert habe, u.A. ohne einen Importer für alte Inhalte zu haben. Was man halt so macht.

Was sich getan hat

Mehr Kleinkram – bisschen mehr padding hier, leicht andere font-size da, eine Runde Flexbox im Archiv; nichts, was einen Blogeintrag rechtfertigen würde.

Ich musste leider a11y-toggle wieder entfernen und durch eine eigene JavaScript-Lösung ersetzen, weil es die Vorschau von Artikeln im s9y-Backend insofern kaputt macht, als dass es dort ausgeführt werden möchte, das Ziel dort aber nicht existiert. Das Plugin wirft deshalb nicht nur einen Fehler, es bricht vielmehr die Ausführung des restlichen JS des Theme komplett ab. Ergebnis: Man sieht in der Artikelvorschau im Backend kein Syntax-Highlighting. Pfui.

Nix als Ärger mit dem Buildscript

Vorweg: Ich liebe Buildscripte. Automatisierung von lästigen, langweiligen Aufgaben, die aber einfach gemacht werden müssen und die ich ansonsten gerne mal vergessen würde? Hell, yes! Gleichzeitig aber sage ich aber auch immer wieder:

Nun stellte ich neulich – in einem anderen Projekt, das aber einen ähnlichen Buildprozess wie das Blog-Theme nutzt – fest, dass für alte Browser, die die Einheit rem nicht beherrschen, teilweise kein Fallback erzeugt wurde. Dafür ist im Buildscript das PostCSS-Plugin pixrem zuständig, also lag die Vermutung nahe, dass vielleicht pixrem kaputt oder falsch konfiguriert sei.

(Was PostCSS ist und was es tut, erkläre ich vielleicht ein anderes Mal.)

Und genau in der Konfiguration lag auch das Problem: Man muss pixrem nämlich ausdrücklich über die Option atRules anweisen, auch innerhalb von @media-Anweisungen ein Fallback in px zu erzeugen; zumindest, wenn man (was ich hier im Blog nicht tue) für die alten IE aus den Media-Queries ein extra Stylesheet erzeugt oder ihnen mit Respond auf die Sprünge hilft. Ansonsten geht pixrem – soweit ich sehe völlig zurecht – davon aus, dass Browser, die @media können, auch rem können. Was eigentlich ziemlich smart ist.