JS Party播客節選:
Kend C. Dodds提到,許多開發者在使用傳統CSS時,由於不確定修改是否安全,常常選擇複製代碼。 PayPal的一個項目中,90%的CSS代碼都是未使用的,因為沒有人敢輕易修改舊代碼。這並非是開發者CSS技能不足,也可能是CSS本身存在缺陷。
Emma Bostain指出,這就是CSS-in-JS(如styled-components)等解決方案的關鍵所在。它們將樣式邏輯封裝在組件內部,避免了代碼衝突,更易於添加、刪除和修改樣式。
Dodds表示同意,這些工具正是為了解決這個問題而生的。
許多大型公司都存在類似的問題:大量的開發者、頻繁的員工流動,導致沒有人清楚哪些CSS代碼正在使用。
這就是為什麼Dodds有時喜歡基於組件的樣式解決方案(儘管他並不熱衷於復雜的工具或JavaScript語法)。關鍵在於樣式與組件的緊密耦合,開發者不再害怕修改樣式。並非所有項目都需要這種方法,但如果你的前端架構已經基於組件(一種無需JavaScript的優秀前端架構方式),那麼採用這種樣式方案就非常合適。
基於此,Dodds對“作用域樣式”在標準化討論中捲土重來感到興奮。
他回憶起一個古老的想法(可能曾經在瀏覽器中短暫出現過):直接在HTML中添加樣式塊,樣式僅作用於父元素。這個想法非常棒,他希望能夠再次實現。
然而,新的方案(例如Miriam的原始提案)比這個基本概念更巧妙,例如能夠設置下邊界和上邊界,從而實現DOM中“環形”樣式的作用域(Nicole Sullivan提出的術語)。無論最終結果如何,無需Shadow DOM且零工具的範圍樣式都將意義重大。
以上是'我們有90%未使用的CSS,因為每個人都害怕觸摸舊東西”的詳細內容。更多資訊請關注PHP中文網其他相關文章!