Am 5. und 6. Juni 2025 fanden die CSSDays in Amsterdam zum elften Mal statt und ich hatte es endlich dahin geschafft. Meist kam in den letzten Jahren Urlaub dazwischen. Die Reise hatte sich gelohnt.
Die CSSDays sind eindeutig eine Konferenz für CSS-Profis. Keine überflüssigen Einführungen in bekannte Techniken. Die Teilnehmer werden als Profis ernstgenommen. Das bedeutete:

Notizen?

Das Fehlen eigener Notizen wurde durch zwei Menschen ausgeglichen, die tolle Sketchnotes erstellten und dann auf Bluesky hochluden (Account 1, Account 2). Die offizielle Kommunikation mit dem Hashtag #cssday lief ausschliesslich über Bluesky.

Jeder Vortrag und jede Q&A im Nachgang wurde live von Amanda aus New Mexiko (!) transkribiert. Die Transkription lief mit einem ganz kurzen Versatz auf einem großen Bildschirm mit. So konnte jeder, egal ob hörgeschädigt oder nicht, den Vorträgen auch lesend folgen. Bei manchen hingenuschelten Worten war mir das eine große Hilfe. Amanda zeigt in einem Post ihr technisches Setup. Sie hat offenbar eine Art Tastatur, über die sie Steno tippt. Einfach irre.

Wichtige Nebensächlichkeiten

Die Struktur des Tages war gut durchdacht. Morgens gab es nach dem ersten Vortrag eine längere Kaffeepause und danach kamen immer zwei Vorträge hintereinander, denen dann eine Pause folgte.

Die Mittagspause war sehr lang und dadurch auch sehr erholsam. Überall poppten kleinen Diskussionszirkel auf, nebenher wurde auch gegessen. Das Buffet war nicht übermässig voll, was ich sehr gut finde. Niemand ist aus kulinarischen Gründen bei einer Konferenz.

Die Vorträge

Die Liste der Teilnehmer und Themen war vielversprechend. Ich versuche einen kurzen Überblick zu geben.

Adam Argyle: Level up your scroll UX

Adam Argyle kümmerte sich um Scrollbars. Ihn interessierten dabei weniger die der Seite, als die der Module auf einer Seite. So ganz nebenbei erzählte er von Unterschieden zwischen Browsern (Safari tanzt wieder aus der Reihe), gegen die man nichts machen kann. Bei ihm sah ich die schöne Idee, die einzelnen Schritte eines Codes in @layer zu unterteilen und die dann als @slayer erst einmal “auszuschalten”. Durch das Löschen des hinzugefügten “s” wird der @layer wieder interpretiert.

Adam schoss wie immer ein Feuerwerk an Beispielen und tollen Ideen ab. Wie gut, dass er seine Experimente immer offen [in Codepen]
(https://codepen.io/collection/JYdmwr) oder auf seiner Seite dokumentiert und seine Talks veröffentlicht. Es ist quasi unmöglich alle guten Ideen und Details mitzuschreiben. Aber ein Nacharbeiten seines Vortrags ist sicherlich sehr hilfreich. Und dabei sollte man immer auch auf mögliche cross-browser Probleme achten, die Adam gerne mal unter den Tisch fallen lässt. Der Vortrag zeigte, dass man sich viel Gedanken über Details machen kann und sollte. Und er zeigte dadurch auch, wieviel heute möglich ist.

John Allsopp: A Dao of CSS

John Allsopp veröffentlichte im Jahr 2000 bei A List Apart einen Grundsatzartikel, der noch heute lesbar und wahr ist: A Dao of Webdesign. In seinem aktuellen Vortrag nahm er den Grundgedanken auf und schaute auf sieben Grundprinzipien des Dao und verglich diese mit CSS-Techniken. Die Prinzipien hier aufzuführen erklärt leider nicht die Inhalte. Im Prinzip sortierte er den Prinzipien einzelne Techniken und Funktionsweisen von CSS zu.

  1. The few as many
  2. Less and less
  3. Code without coding
  4. Softness is strength
  5. Balance without effort
  6. Yield to context
  7. Humility

Ich liebe solche Vorträge. Im Detail lerne ich nichts Neues. Aber ich lerne eine neue Sichtweise kennen. Mein Blick auf meine Arbeit wird verändert, bereichert. Und auch hier sind es manchmal die kleinen Nebensächlichkeiten, die mich zum Weiterdenken bewegen. Wie einige andere Sprecher auch nutzte John HTML zur Präsentation. Das tue ich auch seit vielen Jahren, indem ich reveal.js nutze. Reveal packt alle Inhalte in eine einzelne Seite, man kann also fast von einer SPA sprechen. John splittete jeden Slide in eine einzelen HTML-Seite, sodass er keine SPA sondern eine klassische Webseite hatte. Manchmal sind es solche nebensächlichen Details, die bei mir hängen bleiben.

Ich bin auf die Aufzeichnung gespannt, damit ich den Vortrag noch einmal in Ruhe nachvollziehen kann. Einen Artikel scheint es nicht zu geben. So müssen die Slides seines Vortrages erst einmal reichen.

Miriam Suzanne: Is Sass Dead Yet? CSS Mixins & Functions

Miriam Suzanne war viele Jahre sehr stark in der Weiterentwicklung von Sass beschäftigt, hatte auch mal ein eigenes Sass-Gridsystem erstellt. In den letzten Jahren engagiert sie sich sehr für neue Standards. Container Queries haben wir ihr zu verdanken.

Nun hat sie sich um eine Spezifikation für Funktionen und Mixins innerhalb von CSS bemüht. Im Prinzip war der Vortrag eine rein theoretische Geschichte, denn es gibt noch keine Implementierung. Wobei das nicht ganz stimmt, denn es gibt einen Codepen von ihr, der in aktuellen Chromium-Browsern funktioniert. Es besteht also eine leichte Hoffnung.

Die Ideen sind vielversprechend. Werden sie Realität und sterben die Browser aus, die nichts damit anfangen können, dann gibt es zwei Argumente weniger hat für Sass.

Sehr schön fand ich, dass Miriam mehrfach betonte, dass man weder mit noch ohne Sass etwas falsch mache. Man solle die Tools nutzen, die für einen selber und das Projekt am Praktischsten sind. Sie wollte nichts verkaufen, nichts ausgrenzen.

Miriam holte sehr weit aus, um das Thema zu erklären. Aber das war sehr erhellend und hilfreich. Denn sie machte klar, dass die Sprache an sich schon sehr komplex ist. Als Bonus bekamen wir auch noch einen ausführlichen Abstecher in interessante Details von custom properties (a.k.a. CSS Variablen). Und wegen dieses Exkurses wurde auch jedem im Raum klar, wo die Schwierigkeiten in der Umsetzung dieser Ideen sind. Denn wie bei den Variablen wird das Konzept von Präprozessoren genommen und in CSS eingebaut.

Aber beide Techniken funktionieren unterschiedlich. Wie der Name es schon sagt, wir der Code es Präprozessors wie Sass vor der Ausführung im Browser behandelt. Eine Variable wird dann also aufgelöst, wohingegen sie bei CSS im Code existent bleibt. Ähnliches wird auch bei Mixins und Funktionenn passieren. Die Idee ist die gleiche zwischen CSS und Sass/Less. Aber die Umsetzung wird sich unterscheiden.

Ich bin gespannt, wie schnell diese Spezifikation finalisiert und implementiert wird.

Cyd Stumpel: CSS tried to come for my job

Cyd beschäftigt sich viel mit Animationen, manche einfach, einige komplex. Sie hat in der Vergangenheit deshalb sehr intensiv mit JavaScript-Animationstools gearbeitet. Da CSS aber immer mächtiger wird, zeigte sie uns, was man heute alles mit ein paar Zeilen CSS animieren kann. Alles unter dem Motto “das ist ganz einfach” - was eindeutig im Auge des Betrachters liegt. Ein großer Fokus waren dabei view-transitions im praktischen Einsatz und scroll-driven animations.

Brecht De Ruyte: Select it! Styling new HTML UI capabilities

Der Belgier Brecht de Ruyte warb für das Engagement in der Gruppe OpenUI und nahm sich als ein Beispiel für deren Output die kommenden Änderungen am Select-Element vor. In seinem Blog hat er eine mittlerweile vierteilige Serie darüber verfasst.

Es war extrem beeindruckend zu sehen, in welcher Form wir demnächst in allen Browsern das Select-Element gestalten können.

Rachel Andrew: Multicol and fragmentation

Rachel widmete sich einer selten genutzten Technik: der mehrspaltigen Formatierung. Sie stellte sehr treffend die zahlreichen Probleme der Technik dar und endete mit dem aktuellen Vorschlag zur Erneuerung der Technik.

Dazwischen unternahm sie einen umfangreichen Exkurs in die Fragmentation-Spec. Diese ist immer dann wichtig, wenn Inhalte in einen neuen Kontext überführt werden sollen - oder auch nicht. Das betrifft natürlich ein Mehrspalten-Layout, aber auch den Druck von Webseiten. Schliesslich müssen da Seitenumbrüche definiert werden.

Es war wieder einmal sehr erhellend, Rachel zuzuhören. Ich habe wieder viele Details der Browserinnereien kennengelernt. Solche Vorträge und die darin befindlichen Exkurse finde ich immer sehr wertvoll, um ein besseres Gesamtbild von CSS (und HTML) zu bekommen.

Sollte die Spec irgendwann umgesetzt werden, werden wir eine Art “Grid light” bekommen. Nach kurzem Überlegen finde ich diese Lösung sehr passend und gut. Ich hoffe, die Browserhersteller beeilen sich. Denn diese Neuerung könnte vor allem auf textintensiven Newsseiten neue Optionen für das Design eröffnen.

Interessant und erfrischend fand ich, dass sie mehrfach betonte, dass Analogien zum Printdesign nichts Böses wären. Sie würden einfach neue Perspektiven eröffnen und Ziele definieren. Den Vortrag kann man sich auch frei auf Youtube anschauen.

Brad & Ian Frost: Design Token Architecture

Der erste Tag endete mit einem inhaltlich schwachen Vortrag. Brad Frost hatte aus unerfindlichen Gründen seinen Bruder mitgeschleppt und liess ihm dann nur wenige Minuten Zeit. Ansonsten redete er, so wie wir es gewohnt sind. Als der Vortrag interessant zu werden drohte war er vorbei. Ich trete ihm wohl nicht zu nahe, wenn ich vermute, dass beide nur anwesend waren, um ihren 900 Dollar teuren Kurs über Design Tokens zu bewerben.

Es gab leider keine tieferen Einsichten in Tokens, keine guten Tipps für Benamung, Sortierung, Umgang mit Tools. Wer sich wie ich schon einmal mit Tokens und deren Implementierung in Figma beschäftigt hat, langweilte sich. Und ich denke, alle anderen waren nachher nicht viel schlauer als zuvor.

Chris Coyier: Scope in CSS

Viele Entwickler, die CSS irgendwann entdecken aber von typischen Programmiersprachen kommen, haben ganz offensichtlich Probleme, mit der Grundidee von CSS zurecht zu kommen. So entstand Sass (damit man CSS wie Ruby programmieren konnte) und so entstanden Bibliotheken, die Klassen an ganz bestimmte Elemente binden sollen. Sie sollen sie “scopen”.

Chris Coyier, der Gründer von CSS-Tricks und Codepen, nahm sich dieses sehr grundsätzlichen Themas an. Er zeigte sehr schön, dass wir bei CSS immer scopen. Jede Klasse ist ein Scope.

Im Laufe des Vortrags nahm er sich die unterschiedlichen Ansätze des Scopings vor und betrachtete Vor- und Nachteile. Er betrachtete CSS-Modules, CSS-in-JS, CSS in React, Scoped Styles in Vue und Svelte. Auch iframe und das Shadow DOM sowie Utility Classes durften nicht fehlen. Zum Schluss wurde auch das neue @scope betrachtet. Es war ein kenntnisreicher und interessanter Rundumschlag.

Ein sehr erfrischender Vortrag, den es als PDF und mit ein wenig erläuterndem Text in Artikelform gibt.

Ahmad Shadeed: Smart layouts

Das war einer der Vorträge, auf die ich mich am Meisten gefreut habe. Ahmad betreibt ein sehr interessantes Blog und hat im letzten Jahr einen enormen Sprung gemacht, seine Inhalte zu präsentieren und nachvollziehbar zu machen.

Im Grunde drehte sich sein Vortrag darum, das Layout einer Seite auf mehrere Parameter reagieren zu lassen und dabei den Browser die Arbeit machen zu lassen. Ahmad zeigte uns, wie wir mit kreativer Kombination aller mittlerweile existierender moderner Techniken zu sehr anpassbaren Layouts kommen. Seine Bezugsgrößen sind:

Er zeigte bspw., wie man ein Layout ändern kann, je nach dem ob sich in einem Container Inhalte befinden oder einen bestimmten Umfang überschreiten. Eine sehr pfiffige Idee. Ich bin mal gespannt, was meine Designer-Kollegen dazu sagen. Es wäre ein Kontrollaspekt weniger (Kontrolle ist eh nur eine Illusion).

Es war ein Genuss, den Beispiellayouts zu folgen. Zum Glück hat er sein Slidedeck veröffentlicht. Ich wusste ja, dass er viele Slides hatte, aber 224 Slides bei einer Dreiviertelstunde Redezeit ist dann doch sportlich.

Die Nacharbeit der Ideen dieser Slides wird viel Zeit in Anspruch nehmen. Aber das Ergebnis wird jede Anstrngung wert sein. Für mich war dies der wichtigste Vortrag der Konferenz. Denn im Gegensatz zu den auch sehr anregenden Talsk von Brecht und Adam sind Ahmads Ideen jetzt schon in allen modernen Browsern umsetzbar.

Tim Nguyen: Form control styling

Tim arbeitet für Apple und kümmert sich u.a. um die Standardisierung von Stylingtechniken für Formulare. Dieser Talk war wieder viel Zukunftsmusik. Aber eine Musik, die ich sehr gerne höre. Schließlich werden die Formularelemente seit jeher sehr stiefmütterlich behandelt. Insbesondere aus CSS-Sicht.

Tim präsentierte den frischen Editors Draft. Alles baut auf der neuen Eigenschaft appearance: base und einer großen Zahl neuer Pseudoelemente und Pseudoselektoren auf.

Endlich geht die Entwicklung in die richtige Richtung. All das, was wir aktuell in den Devtools als Shadow DOM sehen, soll vereinheitlicht werden und von aussen gestaltbar sein. Leider ist noch nichts in Browsern implementiert. Aber ich kann mir vorstellen, dass es bald geschehen wird. Diesen Vortrag kann man auch frei auf Youtube anschauen. Es lohnt sich.

Amit Sheen: Building a Computer with CSS

Dies war ein Spaßvortrag, der so ziemlich jeden bass erstaunt zurück liess. Erst einmal definierte Amit, was eine CPU ist: eine Einheit, die logische Berechnungen durchführt. Für mich als Nicht-Informatiker war das etwas Neues. Ich stelle mir da immer ein Hardwareteil drunter vor.

Sodann hob er an, alle logischen Operatoren in CSS zu implementieren. Durch intensive Nutzung des :has()- und des :not()-Selektors in Zusammenarbeit mit wengen Checkboxen war es ihm möglich, innerhalb relativ kurzer Zeit eine CPU zu bauen.

Ana Rodrigues: Refactoring CSS

Von diesem Vortrag hatte ich mir ein paar praktische Tipps oder Hinweise auf Tools erhofft. Ich fand ihn inhaltlich leichtgewichtig, so wie den von Brad Frost. Nichts, was ich nicht schon vorher gewusst hätte. Schön erzählt, aber wenig erhellend.

Hidde de Vries: display: green; applying the web sustainability guidelines

Hidde ist eigentlich für seine Detailkenntnis in Sachen Accessibility bekannt. Er widmete sich diesmal aber dem Klimaschutz. Seine Frage war: Was können wir als Entwickler dafür tun, dass weniger Energie produziert wird für unserere Job sund dadurch auch weniger CO2 produziert wird?

Er betrachtete auch die in Entwicklung befindlichen “Web Sustainability Guidelines”. Deren Aufbau erinnert doch stark an die WCAG.

Der Vortrag war eindeutig zum Nachdenken gemacht. Man sollte sich die Slides immer wieder anschauen und das eigene Handlen hinterfragen. Nur weil wir mit unseren Computern nicht sichtbar Abgase emmittieren bedeutet das ja nicht, dass dies nicht für uns geschieht.

Abseits des inhaltlichen Vortrags war es bemerkenswert, dass Hidde von vielen der vorherigen Vorträge Fotos in seine Präsentation eingebaut hatte. Das spricht für gute Organisation seinerseits aber auch dafür, dass er eine gute Vorstellung hatte, welche Geschichte er erzählt und wie er sie mit einem Schnappschuss wirksam unterstützen kann. So kommen dann am Ende 147 Slides für 45 Minuten raus. Sie sind auf alle Fälle lesenswert.

Bruce Lawson: The goose and the common

Vorträge von Bruce Lawsin haben immer einen esten Hintergrund, werden aber immer mit einer großen Portion (Selbst-)Ironie und Sarkasmus vorgetragen. Eindeutig der richtige Rausschmeisser nach zwei inhaltsvollen Tagen.

Der Titel des Vortrags erklärte sich aus einem alten, englischen Märchen. Er nahm dessen Versatzstücke wunderbar herbei, um sie für das eigentliche Thema zu benutzen. Bruce kann wunderbar Geschichten erzählen. Das ist schon eine hohe Kunst, die wenige beherrschen, speziell bei technisch orientierten Konferenzen.

Früher arbeitete Bruce bei Opera, mittlerweile arbeitet er für Vivaldi. Bekannt dürfte er hauptsächlich über seine profunde Kenntnis in Sachen Accessibilty sein. Aber darum ging es nicht. Sein Vortrag drehte sich um WebApps und warum Apples Weigerung, diese auf iOS zuzulassen, eine sehr schlechte Entscheidung ist. Natürlich behandelte er auch die Bedeutung von Smartphones ausserhalb der westlichen Industriestaaten und die Nachteile der Abschottung von iOS gegenüber alternativen Browsern. Ich habe durch diesen Vortrag wenig Neues gelernt, bekam aber den Sachstand kompakt zusammengefasst.

Fazit

Ich werde versuchen, auch nächstes Jahr wieder auf diese Konferenz zu kommen. Die inhaltliche Mischung war super, die Vortragenden im Wesentlichen auch. Es ist eine Mischung aus Inspiration und Wissensvermittlung. Dazu kommt die perfekte Organisation und die tollen Gespräche in den Pausen und nach der Veranstaltung. Für CSS-Profis ist diese Konferenz in meinen Augen ein Muss. Und ich bin sehr froh, dass Teil meines Eintritts der Zugang zu allen Videos ist. Sollte man die Reise nach Amsterdam scheuen und nur Interesse an den Vortträgen hegen, kann man auch einen Videozugang (live und als Archiv) stark verbilligt buchen.

gedruckt von der Seite http://css-weblog.de/notizen/cssday-2025.html