Ist Update auf 3.x Version möglich?
Ich habe mich mit dem Umstieg auf die neueste Version auseinandergesetzt. Leider setzen die TailwindCSS Entwickler auf Just In Time (JIT) Verfahren. Das macht mir quasi unmöglich das Template auf v3.x
zu bringen.
Kurz gesagt: Tailwind generiert nur die CSS Klassen, die in einem Projekt tatsächlich benutzt werden. An sich super - das minimiert die generierte CSS Datei enorm. Dafür muss ich lediglich alle Dateien (HTML, JS, etc) in tailwind.config.js
verlinken (Pattern sind möglich). Hier liegt genau das Problem...
Woher soll Template-Entwickler wissen, welche CSS Klassen in den installierten Modulen vorkommen? Und was ist mit dem Content aus der DB? Seiten- oder Baustein-Inhalt schnell mit Tailwind Klassen anpassen, ohne einzige CSS Zeile schreiben zu müssen, war in meinen Augen der größte Vorteil. Das gleiche betrifft Baustein-CSS Klassen - hier wird das auch in Projekten gerne benutzt.
Im Moment ist es möglich in der tailwind.config.js
Datei safelist zu benutzen und hier alles definieren, was man braucht, hier ein Beispiel aus der Doku:
Aber will an hier alles definieren?
Um nicht jede einzelne Eigenschaft definieren zu müssen kann man sowas wie hier benutzen:
safelist: [
{
pattern: /./,
variants: ['hover','focus','sm','md'],
},
]
Quelle: https://github.com/tailwindlabs/tailwindcss/discussions/6256#discussioncomment-1876701
oder
safelist: [
{
pattern: /./,
variants: ['hover','focus','md','sm','md:hover','sm:hover','md:focus','sm:focus'],
},
]
Quelle: https://github.com/tailwindlabs/tailwindcss/discussions/6256#discussioncomment-1876701
oder um möglichst alle Features der Version 3 zu nutzen:
safelist: [
{
pattern: /.*/,
variants: [
"first",
"last",
"odd",
"even",
"visited",
"checked",
"empty",
"read-only",
"group-hover",
"group-focus",
"focus-within",
"hover",
"focus",
"focus-visible",
"active",
"disabled",
],
},
Quelle: https://github.com/tailwindlabs/tailwindcss/discussions/6347#discussioncomment-1905577
Das Problem ist jedoch die generierte Dateigröße. 4,6 Mb, 8,9 Mb und das letzte habe ich gar nicht ausprobiert. Das ist definitiv viel zu viel :(