国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

【譯】CSS 方法論的選擇

shery / 2810人閱讀

摘要:本文轉(zhuǎn)載自眾成翻譯譯者文藺鏈接原文多年來(lái),方法論層出不窮。不幸的是,并不存在適用所有場(chǎng)景的最佳選擇。因此,如非知己知彼,爭(zhēng)論方法論是很難得出結(jié)論的。此外,我使用這些方法論的時(shí)間并不夠長(zhǎng),并不敢宣稱了解全部。

本文轉(zhuǎn)載自:眾成翻譯
譯者:文藺
鏈接:http://www.zcfy.cc/article/1828
原文:http://simurai.com/blog/2016/11/27/css-methodologies

多年來(lái),CSS 方法論層出不窮。不幸的是,并不存在適用所有場(chǎng)景的最佳選擇。本文介紹了一些適用于不同情況的 CSS 方法論。

好,跟我一起開始踩坑之旅吧。

我只需要?jiǎng)?chuàng)建一個(gè)單頁(yè)面簡(jiǎn)單的站點(diǎn)。內(nèi)容以文本為主,可能會(huì)有一兩個(gè)表單。沒有人和我協(xié)作,就我自己(還有我家的喵)。

? 簡(jiǎn)單就好。直接給 HTML 元素添加樣式,連 class 都不需要。依賴級(jí)聯(lián)關(guān)系,利用樣式繼承。隨著站點(diǎn)增長(zhǎng),可能需要開始看看 OOCSS,或不時(shí)使用一些工具類。

我們是一個(gè)中型團(tuán)隊(duì)。項(xiàng)目復(fù)雜度增長(zhǎng)較快,采用多人協(xié)作。

? 使用 BEM、SUIT、SMACSS、ITCSS 或 Enduring CSS 等。它們各不相同,但也有相似點(diǎn),在某些方面亦有重疊之處。它們所使用的命名約定,能保證你們之間不會(huì)發(fā)生沖突。和團(tuán)隊(duì)一起討論下,在作出最終決定前,可能需要多進(jìn)行一些嘗試。

我們是有多個(gè)團(tuán)隊(duì)的大公司,產(chǎn)品龐大而復(fù)雜。跟蹤變化相當(dāng)困難。代碼庫(kù)不斷變化,而我們又不想顧此失彼。

? 使用 JSX、JSS,或其他類似的 CSS-in-JS 庫(kù)。將 CSS 與 HTML/JS 綁在一起,更容易修改、移動(dòng)或刪除組件,而又不影響其他部分。還可以看看 ACSS 這樣的 Atomic CSS,這是另一種解決相同問(wèn)題的思路。

以上三種情況可能最常見,但也存在更多的具體需求不盡相同的情形:

我希望從原型開始工作。

? 使用“單一用途類”,如 TACHYONS 或 BASSCSS。同時(shí)編寫 HTML 和 CSS,這項(xiàng)工作也可以很自由。不用在文件之間來(lái)回切換,不用再為如何編寫類名冥思苦想,只要根據(jù)所思所想,快速進(jìn)行構(gòu)建。

項(xiàng)目中有大量狀態(tài)、大量需要在運(yùn)行時(shí)更新的內(nèi)容。

? 使用 CSS-in-JS 庫(kù)。可以通過(guò) JS 直接更新屬性,無(wú)需查找類名或 DOM 節(jié)點(diǎn)。

我想發(fā)布一個(gè) CSS 框架(啊我也想啊)。

? 使用帶有命名空間的 BEM。如此一來(lái),一定程度的保護(hù)作用的同時(shí),尚能進(jìn)行定制。此外,如果能夠輕松定制主題也是極好的,比如提供一些便于修改的變量。

我想制作一個(gè)(不可定制的)第三方組件。

? 使用 CSS Modules。獨(dú)有的類名,能夠防止外部樣式污染以及內(nèi)部樣式泄漏。此外,還可以考慮 iframe 或 Web Component。

我想在 CodePen 上創(chuàng)建 Demo。

? 用點(diǎn)新東西。這種時(shí)候,正好試試那些還不太熟悉的東西。

我討厭我的同事。

? 使用鏈?zhǔn)竭x擇器,如 .header > ul.nav li .button {}。你的同事會(huì)因此苦不堪言,而你則可以在一旁暗暗幸災(zāi)樂(lè)禍。

好了。啊等等... 最后一條不算數(shù)哈。關(guān)于鏈?zhǔn)竭x擇器,我能想到的唯一使用場(chǎng)景,就是在無(wú)法訪問(wèn)元素的時(shí)候。例如,內(nèi)容由 CMS 決定,無(wú)法更改。這種時(shí)候,鏈?zhǔn)竭x擇器應(yīng)該是最(wei)佳(yi)選擇吧。

如你所見,不同使用場(chǎng)景太多太多。因此,如非知己知彼,爭(zhēng)論 CSS 方法論是很難得出結(jié)論的。

最后一點(diǎn)想法:不必抱死在一套 CSS 方法論上,還需有所借鑒,并探索出一套適合自己的方法。切換新方法是可能的,有時(shí)候則是必須的。例如一個(gè)起始于簡(jiǎn)單原型、團(tuán)隊(duì)成員與日俱增、日漸復(fù)雜的項(xiàng)目。但切換 CSS 方法論費(fèi)時(shí)費(fèi)力,容易出錯(cuò),事先進(jìn)行一些計(jì)劃能夠減少后期的很多問(wèn)題。選擇愉快!

免責(zé)聲明:我個(gè)人也難以做到絕對(duì)中立,不偏不倚。能做到的同學(xué)請(qǐng)舉手。此外,我使用這些 CSS 方法論的時(shí)間并不夠長(zhǎng),并不敢宣稱了解全部。但我已盡可能保持客觀中立了,如果你認(rèn)為本文錯(cuò)誤連篇,或者漏掉了重要內(nèi)容,請(qǐng)點(diǎn)擊鏈接盡情修改。

私貨時(shí)間,歡迎關(guān)注微信公眾號(hào)~

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/115349.html

相關(guān)文章

  • 】謹(jǐn)慎使用CSS波浪選擇

    摘要:它們都錯(cuò)誤地使用了波浪選擇器,并造成了很多地方的代碼臃腫。大家可能以前也都遇到或者使用過(guò)波浪選擇器,畢竟它作為選擇器已經(jīng)很長(zhǎng)時(shí)間了,甚至都支持。我的經(jīng)驗(yàn)里,使用波浪選擇器一般都是通過(guò)而不是來(lái)選擇兄弟元素的。 原文:The tilde CSS selector, use carefully! 最近我的一些項(xiàng)目都遇到了一些類似的樣式問(wèn)題。它們都錯(cuò)誤地使用了波浪選擇器,并造成了很多地方的CS...

    dcr309duan 評(píng)論0 收藏0
  • []聊一聊CSS法論

    摘要:這個(gè)方法論在內(nèi)容和容器之間有著明顯的區(qū)分。這是通過(guò)把命名為表示其角色的類名。通過(guò)使用這種扁平的命名方式避免了多后代的選擇器。 原文鏈接:A Look at Some CSS methodologies CSS在大型,復(fù)雜,快速迭代的系統(tǒng)中難以管理的程度是出了名的。 其中一個(gè)原因是CSS缺少內(nèi)置的作用域管理機(jī)制。在CSS中,所有的一切都是全局的,這意味著任何你所做的改變都有可能層疊或者改...

    CoffeX 評(píng)論0 收藏0
  • []聊一聊CSS法論

    摘要:這個(gè)方法論在內(nèi)容和容器之間有著明顯的區(qū)分。這是通過(guò)把命名為表示其角色的類名。通過(guò)使用這種扁平的命名方式避免了多后代的選擇器。 原文鏈接:A Look at Some CSS methodologies CSS在大型,復(fù)雜,快速迭代的系統(tǒng)中難以管理的程度是出了名的。 其中一個(gè)原因是CSS缺少內(nèi)置的作用域管理機(jī)制。在CSS中,所有的一切都是全局的,這意味著任何你所做的改變都有可能層疊或者改...

    cfanr 評(píng)論0 收藏0
  • 那些年,我前端/Java后端書單

    摘要:全文為這些年,我曾閱讀深入理解過(guò)或正在閱讀學(xué)習(xí)即將閱讀的一些優(yōu)秀經(jīng)典前端后端書籍。當(dāng)然,如果您喜歡這篇文章,可以動(dòng)手點(diǎn)點(diǎn)贊或者收藏。 全文為這些年,我曾閱讀、深入理解過(guò)(或正在閱讀學(xué)習(xí)、即將閱讀)的一些優(yōu)秀經(jīng)典前端/Java后端書籍。全文為純?cè)瓌?chuàng),且將持續(xù)更新,未經(jīng)許可,不得進(jìn)行轉(zhuǎn)載。當(dāng)然,如果您喜歡這篇文章,可以動(dòng)手點(diǎn)點(diǎn)贊或者收藏。 基礎(chǔ) 基礎(chǔ)書籍 進(jìn)階 進(jìn)階階段,深入學(xué)習(xí)的書...

    fxp 評(píng)論0 收藏0
  • 那些年,我前端/Java后端書單

    摘要:全文為這些年,我曾閱讀深入理解過(guò)或正在閱讀學(xué)習(xí)即將閱讀的一些優(yōu)秀經(jīng)典前端后端書籍。當(dāng)然,如果您喜歡這篇文章,可以動(dòng)手點(diǎn)點(diǎn)贊或者收藏。 全文為這些年,我曾閱讀、深入理解過(guò)(或正在閱讀學(xué)習(xí)、即將閱讀)的一些優(yōu)秀經(jīng)典前端/Java后端書籍。全文為純?cè)瓌?chuàng),且將持續(xù)更新,未經(jīng)許可,不得進(jìn)行轉(zhuǎn)載。當(dāng)然,如果您喜歡這篇文章,可以動(dòng)手點(diǎn)點(diǎn)贊或者收藏。 基礎(chǔ) 基礎(chǔ)書籍 進(jìn)階 進(jìn)階階段,深入學(xué)習(xí)的書...

    Tecode 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

shery

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<