Tailwind CSS的缺點,但我仍然覺得好用
畢竟我不是要推銷Tailwind CSS,我也沒收對方錢,也沒有合作關係。所以直接來說說我在用Tailwind CSS時遇到的問題,如果這些問題都不成問題,那Tailwind CSS就很適合您。
收費制
Tailwind CSS商用是要購買授權的,且如果要範例的代碼,如一些Component要怎樣設計的漂亮,就要購買授權。
對於公司行號而言費用是極低的,但對於個人可能就看荷包深度,大概199 USD左右不含稅吧。
如果是要找免費 MIT License 的直接選擇Bootstrap吧!
範例代碼與樣板不夠
這點是我在開發上一個專案與團隊遇到的最大問題,網路的資源較少,因為是收費制就算有範例代碼的網站也會是收費制…所以除非自己有CSS設計的底子,知道怎樣設計簡潔好看的樣式,不然要買範例代碼相對於困難(不管是金錢上還是資源多寡都是困難)。
官方樣板只有React
對於React的開發者當然是福音,但如果像我們是使用Angular或者如果是使用Vue,那就真的要很熟悉那個框架,自己想辦法寫UI出來。
像我光是在寫日期下拉,可以選年份和月份和日期的,就花了三天多,明明CSS排版的語法都知道要怎樣做,但變成要自己寫Angular的TypeScript與HTML Template才可以變成一個可重複利用的UI。
但如果是React的開發者,又有一點點預算,我認為是相當合適的。
跟其他的UI庫可能衝突
比如我現在要用PrimeNG,就跟PrimeFlex衝突到了。
Angular Material的話又不好套用上去,即使不會衝突,UI的style不好強制取代。
結果搞到最後我們開發的產品幾乎沒有用Angular Material的內建UI控制項,全部我從頭開發起。
而下一個產品要用PrimeNG的話就直接要跟Tailwind CSS說暫別了,因為PrimeNG+Tailwind CSS 起跳輸出的檔案大小就是500kb左右。
結論
如果是要寫網站而非SPA,那Tailwind只要有用縮減CSS大小的工具,我認為是很好用的,除了商業使用要授權外。
但寫SPA除非用的是React,不然Tailwind CSS得有相當扎實的基本功(CSS和JavaScript框架的),不然用起來會很綁手綁腳。
不過我們公司KM系統如果需要SSR的部份,要開發C# Blazor的專案我也會用Tailwind CSS來做排版就是了,這邊只是寫寫我個人覺得缺點。
優點很多,語法相當優美且容易使用就是一個,可是我如果一直寫優點文章感覺在幫別人推銷產品。