精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

淺析 Bootstrap 的 CSS 類名設(shè)計

開發(fā) 前端
譯者注:最近在重新設(shè)計一個 UI 框架,因此也在考察一些類似項目的特征和要素。在讀到《Bootstrap 編碼規(guī)范》時,順著鏈接發(fā)現(xiàn)了其作者 @mdo 的一篇文章,其中講到 CSS 類名的設(shè)計思路。

在構(gòu)建類似 Bootstrap 這樣的 CSS 系統(tǒng)時,保持系統(tǒng)的簡單性、穩(wěn)定性、靈活性是相當(dāng)重要的。這并非易事,尤其對于大型團隊和項目來說,組件的數(shù)量可能會變得相當(dāng)龐大。為了改善這種狀況,你不妨考慮用前綴式類名取代鏈?zhǔn)筋惷?/p>

在使用 鏈?zhǔn)筋惷?方案時,你可能會把一系列特定組件的 CSS 選擇符寫成這樣:

  1. .success { ... }  
  2. .btn.success { .. }  
  3. .alert.success { ... } 

我們在這里設(shè)置了一個全局基礎(chǔ)類 .success,它可能涵蓋了成功按鈕和成功提示框之間的所有共性。然后,在單個組件層面,我們又需要對它進(jìn)行擴充或覆蓋。但是,這種完全開放式的類名和鏈?zhǔn)斤L(fēng)格令開發(fā)者面臨一些困擾和潛在痛點:

  • 這個基礎(chǔ)類到底代表什么
  • 哪些元素會在根層級受到影響(譯注:啥意思?)
  • 哪些元素可以把 .success 類鏈到自己身上
  • 它是否可以被進(jìn)一步擴展到更多的組件上
  • 假如一個 .success 的實例要用白底綠字,而另一個要用綠底白字,怎么辦?

而且這些問題還只是冰山一角。這種方案未必很差,但如果可擴展性、簡單性和靈活性是你的***需求,這可能就不是***的辦法。此時,前綴式類名方案可能更加適合你。

前綴式類名 將開發(fā)者引入一種更簡單、更易維護(hù)的方向,從而構(gòu)建一個可擴展的 CSS 系統(tǒng)。當(dāng)我們拋棄常規(guī)的基礎(chǔ)類的方式,并將每個組件的樣式用前綴限制起來時,我們的代碼會變成這樣:

  1. .btn-success { ... }  
  2. .alert-success { ... } 

這樣一來,基礎(chǔ)類被設(shè)定在組件級別,而不是整個系統(tǒng)級別。換句話說,我們的基礎(chǔ)類變成了 .btn.alert,而不是 .success。所有組件之間都不會出現(xiàn)樣式和行為上的相互干擾,因為我們把組件具備“成功狀態(tài)”視為貫穿整個系統(tǒng)的一種概念。這就是說,每個組件在“成功”狀態(tài)下的樣式,只有在 概念 層面才是相通的;而對于如何 實現(xiàn) 這個樣式,是被約束在每個獨立的組件內(nèi)部的。不用操心通用的樣式還會在哪里使用,也不用顧慮不可意料的副作用,這種方式使得每個組件更加穩(wěn)定和靈活。

構(gòu)建組件是一項非常具有策略性并且注重細(xì)節(jié)的工作,在一個類似 Bootstrap 的系統(tǒng)中,組件需要天生具備獨立性,以提高模塊分離度和可定制性。我們通過這種方式來打造更好的代碼和一個令人愉悅的項目。

我的體會

作者視角

我自己在 CMUI ***版中,基本上使用的是文章開頭所說的“鏈?zhǔn)筋惷?rdquo;風(fēng)格。比如說,一個大號按鈕的結(jié)構(gòu)可能是這樣的:

  1. <button type="button" class="cmBtn cmLarge">Large button</button> 

而在 Bootstrap 中,類似的元素是這樣的:

  1. <button type="button" class="btn btn-lg">Large button</button> 

最開始我并沒有覺得這兩者有什么不同——前一個類名用于掛載框架預(yù)定義的按鈕樣式,后一個類名用于指定按鈕的尺寸。把 Bootstrap 源碼中所有的 .btn-lg 替換成 .cmBtn.cmLarge,不就跟我的 CMUI 一樣了嘛?我甚至覺得 Bootstrap 的類命名有點啰嗦,.btn.btn-lg 中的 btn- 不是重復(fù)了嗎?還是 CMUI 干凈利落啊!

然而,看完這篇文章,我似乎體會到 Bootstrap 這種設(shè)計的好處。我的理解可能并不是原作者的出發(fā)點,但也不妨列舉出來,僅供參考。

用戶視角

這兩種類名風(fēng)格的差異并不在于源碼是怎么寫的,而是在于開發(fā)者(這里指使用 Bootstrap 的開發(fā)者)在看到類名時的反應(yīng)。我的理解是,不同的命名,對開發(fā)者的暗示是不同的

開發(fā)者們并不總是會按照組件文檔的示例來編寫組件的結(jié)構(gòu)代碼。比如說,某些時候他們手邊沒有文檔(或不想找文檔),又或者他們所期望的樣式在文檔中并沒有列出。他們可能會抱著一種試試看的心態(tài),嘗試修改或組合手頭的幾個類名,以期產(chǎn)生某種新的樣式效果。

如果類名是寬泛的(比如 CMUI 中的 .cmLarge),就很容易被拿來嘗試——比如開發(fā)者會給一個 ul.cmList 元素增加 .cmLarge 類并期望得到一個大號的列表,但實際上 CMUI 并沒有提供這種組合!這破壞了開發(fā)者的預(yù)期,導(dǎo)致心理受挫,以致最終放棄這個組件庫(夸張了點哈)。

但如果類名是被一個“組件級”前綴限定的(比如 Bootstrap 中的 .btn-lg),那么它被開發(fā)者拿去組合到其它組件身上的可能性就相當(dāng)?shù)汀<词鼓硞€異想天開的開發(fā)者試圖把 .btn-lg 改成 .dropdown-lg 并應(yīng)用到一個下拉菜單上,當(dāng)他失敗時,他應(yīng)該也已經(jīng)做好心理準(zhǔn)備了罷。

結(jié)語

這樣看來,Bootstrap 的做法確有它的好處,我的 CMUI 2.0 不妨也試試看。

你如何評論這兩種類名風(fēng)格呢?不妨留下你的觀點吧!

原文鏈接:https://github.com/cssmagic/blog/issues/45

責(zé)任編輯:林師授 來源: cssmagic 的博客
相關(guān)推薦

2015-09-06 08:57:07

BootstrapCSS框架

2009-07-22 16:27:24

iBATIS配置類iBATIS操作類

2011-03-07 09:41:10

JavaScript

2010-01-21 13:48:30

C++基類

2010-08-24 13:14:36

CSSmargin

2010-06-24 15:30:47

HART協(xié)議

2009-06-29 17:39:31

JSP設(shè)計模式

2014-05-08 10:36:59

CSS單詞連字符

2017-07-21 09:40:35

Python類、繼承和多態(tài)

2011-03-08 09:15:04

JavaScript

2010-02-02 13:15:26

Python類

2010-09-07 10:33:04

CSS

2022-01-11 19:29:15

CSS JS頁面

2021-06-09 18:52:05

方案設(shè)計庫存數(shù)

2013-08-06 09:35:20

視覺設(shè)計UI設(shè)計設(shè)計

2009-08-06 14:43:10

C# Calculat

2009-08-21 17:24:06

C# SingleIn

2009-08-21 17:24:06

C# SingleIn

2014-04-25 11:12:16

BootstrapBootstrap工具

2010-07-14 09:01:07

架構(gòu)設(shè)計
點贊
收藏

51CTO技術(shù)棧公眾號

www日本高清视频| 午夜男人的天堂| 主播国产精品| 成人18精品视频| 国产精品白丝jk喷水视频一区| 欧美丰满老妇熟乱xxxxyyy| 亚洲伊人精品酒店| 欧美日韩亚洲一区二| 一级一片免费播放| 十九岁完整版在线观看好看云免费| 麻豆精品国产传媒mv男同| 久久久免费精品视频| 毛片久久久久久| 老司机精品在线| 欧美精品久久一区二区三区| 久久久999视频| 国产写真视频在线观看| 91蝌蚪porny成人天涯| 国产自摸综合网| www.色国产| 亚洲福利电影| 久久亚洲欧美日韩精品专区| xxx在线播放| 国产精品xxx在线观看| 欧美精品一二三四| 大陆极品少妇内射aaaaa| 中文在线观看免费| 中文字幕永久在线不卡| 欧美极品视频一区二区三区| 韩国av免费在线| 国模无码大尺度一区二区三区| 国产ts人妖一区二区三区| 久草免费在线观看视频| 91精品一区二区三区综合在线爱| 亚洲视频免费一区| 久久国产精品影院| 欧美激情网址| 亚洲第一中文字幕在线观看| 日本55丰满熟妇厨房伦| 欧美中文字幕精在线不卡| 亚洲成人av一区二区三区| 红桃一区二区三区| av网站导航在线观看免费| 国产精品福利av| 日韩欧美精品久久| 日韩一区二区三区不卡| 成人av电影免费在线播放| 999精品视频一区二区三区| 国产乱人乱偷精品视频a人人澡| 欧美aaa在线| 国产精品第七十二页| 波多野结衣二区三区| 日韩电影免费在线看| 国产成人精品综合| 无码人妻aⅴ一区二区三区有奶水| 国产亚洲福利| 奇米一区二区三区四区久久| 欧美 日韩 精品| 噜噜爱69成人精品| 国产精品69久久久久| 自拍偷拍精品视频| 久久66热偷产精品| 91国产在线免费观看| 亚洲va欧美va| 91在线观看高清| 日韩精品另类天天更新| av网站在线免费观看| 日韩一区欧美小说| 中文字幕欧美人与畜| 超碰超碰在线| 亚洲高清免费在线| 国产肥臀一区二区福利视频| 日韩免费va| 欧美一区二区观看视频| 国模无码视频一区| 色老板在线视频一区二区| 亚洲免费电影一区| 一二三四国产精品| 一区二区亚洲| 国产精品2018| 精品免费久久久| www国产亚洲精品久久麻豆| 日韩一本精品| 免费在线中文字幕| 精品久久久久久久久中文字幕 | 岛国视频免费在线观看| 国产精品三级av| 无码人妻精品一区二区蜜桃网站| 小h片在线观看| 国产一区二区三区四区五区3d| 欧美性猛交xxxx免费看久久久| 国产激情在线观看视频| 欧美h版在线观看| 国产视频亚洲视频| 中文字幕在线2021| 久久精品人人| 亚洲自拍偷拍一区| 激情小视频在线观看| 亚洲免费在线播放| 又色又爽又高潮免费视频国产| 国产精品一区二区精品视频观看| 亚洲精品98久久久久久中文字幕| 99自拍偷拍视频| 在线欧美福利| 91免费国产网站| 免费在线国产| 一区二区三区精品久久久| 九热视频在线观看| 天堂俺去俺来也www久久婷婷| 日韩最新免费不卡| 无码人妻熟妇av又粗又大| 国产伦精一区二区三区| 日韩在线电影一区| 国产一二在线播放| 欧美一区二区在线免费观看| 级毛片内射视频| 亚洲欧洲一区| 亚洲自拍欧美色图| 免费在线观看黄| 色8久久人人97超碰香蕉987| 亚洲乱妇老熟女爽到高潮的片| 日韩欧美二区| 国产精品69av| 国产三级电影在线| 狠狠躁夜夜躁人人躁婷婷91| 中文字幕乱视频| 亚洲国产精品成人| 国产美女久久精品香蕉69| 久蕉在线视频| 日韩欧美国产一区二区| 国产老熟女伦老熟妇露脸| 国产一区二区三区自拍| 亚洲自拍偷拍视频| 中中文字幕av在线| 日韩一区二区三区在线视频| 99久久久无码国产精品不卡| 蜜桃视频在线一区| 图片区小说区区亚洲五月| 成人动漫一区| 亚洲视频在线看| 亚洲永久精品一区| 国产视频一区在线播放| 青青草av网站| 日韩精品一区二区三区免费观影 | 在线观看亚洲欧美| 99久久综合国产精品| 国产不卡一区二区视频| 欧美精品国产白浆久久久久| 久久久久日韩精品久久久男男| 亚洲精品久久久久久动漫器材一区| 亚洲免费在线视频| 佐佐木明希电影| 在线精品一区二区| 开心色怡人综合网站| 伊人色综合一区二区三区影院视频 | 在线亚洲a色| 国产精品久久久久久久久久久新郎| 风间由美一区| 欧美剧情电影在线观看完整版免费励志电影 | 国产精品情趣视频| 久国产精品视频| 欧美韩国一区| 国产伦精品一区二区三区四区视频| av免费不卡| 亚洲人a成www在线影院| 中文字幕人妻互换av久久| 综合亚洲深深色噜噜狠狠网站| 三年中文在线观看免费大全中国| 亚洲欧洲日韩| 精品国产综合| 91国拍精品国产粉嫩亚洲一区| 日韩在线视频网站| 亚洲大尺度视频| 精品露脸国产偷人在视频| 最新中文字幕av| 久久国产生活片100| 成人一区二区av| 神马香蕉久久| 成人网在线观看| 免费毛片在线看片免费丝瓜视频| 亚洲精品国产精品乱码不99按摩 | 777亚洲妇女| 国产精品1234区| 国产视频一区二区在线| 波多野结衣网页| 亚洲影视在线| 色乱码一区二区三区熟女| 国产精品极品在线观看| 国产精品爽爽ⅴa在线观看| 3d玉蒲团在线观看| 亚洲欧美国产一本综合首页| 97人妻人人澡人人爽人人精品| 亚洲一区二区高清| www久久久久久久| 懂色av中文字幕一区二区三区 | 成人看片毛片免费播放器| 欧美国产中文字幕| 在线激情免费视频| 精品性高朝久久久久久久| 国产孕妇孕交大片孕| 色www精品视频在线观看| 久久婷婷一区二区| 国产精品美女久久久久久久久久久 | 国产精品久久久久久久成人午夜| 欧美日韩精品国产| 欧美 日韩 国产 一区二区三区| 91麻豆国产自产在线观看| 亚洲高清视频免费| 美洲天堂一区二卡三卡四卡视频 | 久久99久久99小草精品免视看| 成年人网站免费视频| 亚洲国产一区二区在线观看| 日本一区二区三区四区在线观看 | 成人国产激情在线| 欧美亚洲视频一区二区| 日本大片在线播放| 久久精品国产一区| 波多野结衣在线网站| 日韩高清免费在线| 亚洲毛片欧洲毛片国产一品色| 欧美男女性生活在线直播观看| 九九热在线视频播放| 亚洲高清视频中文字幕| 久久久一二三区| 亚洲三级免费电影| 国产精品18在线| 中文字幕乱码亚洲精品一区 | 欧美综合一区| 欧美深深色噜噜狠狠yyy| 奇米777国产一区国产二区| 国产精品v欧美精品v日韩| 欧美成人精品午夜一区二区| 亚洲www永久成人夜色| 四虎视频在线精品免费网址| 国产精品偷伦视频免费观看国产 | 国产极品视频在线观看| 国产欧美一区二区精品秋霞影院| 日本高清www| 91免费观看视频在线| 国产极品一区二区| 99精品国产99久久久久久白柏| 欧美久久久久久久久久久| 国产福利91精品| 少妇极品熟妇人妻无码| 国产成人亚洲精品狼色在线| 精品人妻人人做人人爽夜夜爽| 国产精品一区在线观看你懂的| 日本一区二区三区在线免费观看| 国产一区二区不卡老阿姨| 在线免费看v片| 丰满少妇久久久久久久| 中文字幕在线播放视频| 99久久99久久免费精品蜜臀| 亚洲成人日韩在线| 国产欧美综合色| 亚洲色图 激情小说| 中文字幕一区二区5566日韩| 中文字幕在线2021| 午夜精品久久久久久久蜜桃app| 国产成人精品亚洲男人的天堂| 天天影视涩香欲综合网| 日韩国产成人在线| 欧美老肥妇做.爰bbww| 亚洲av无码乱码国产麻豆| 亚洲第一色在线| 牛牛热在线视频| 色婷婷久久一区二区| 黄色片免费在线观看| 欧美国产视频日韩| 欧美成人性网| 成人网欧美在线视频| 久久中文资源| 亚洲欧洲精品一区二区| 午夜视频一区| 黑鬼大战白妞高潮喷白浆| 久久99精品久久久久久久久久久久 | www.毛片.com| 欧美日本一区二区三区| 成人午夜免费福利| 亚洲天堂成人在线| 18视频在线观看网站| 欧美在线一级视频| 亚州欧美在线| 精品国产福利| 亚洲成av人片乱码色午夜| 欧美视频在线播放一区| 另类小说欧美激情| av2014天堂网| 亚洲精品视频在线观看免费| 特级毛片www| 日韩免费视频一区二区| 成人午夜影视| 91国语精品自产拍在线观看性色 | 精品久久久久久久久久久久久久久久久久| 欧美日韩卡一卡二| 少妇高潮一区二区三区69| 最近中文字幕mv在线一区二区三区四区| 免费看电影在线| 国产精品日日做人人爱| 好吊妞视频这里有精品| 亚洲午夜精品国产| 久久激情一区| 在线免费看黄色片| 中文字幕一区二区三区在线播放| aaa人片在线| 欧美不卡一二三| 求av网址在线观看| 国产精品第一视频| 日韩欧美影院| 久久国产午夜精品理论片最新版本| 毛片基地黄久久久久久天堂| 香港三级日本三级| 亚洲一区二区欧美激情| 99国产精品欲| 最新91在线视频| 欧美日韩国产网站| 欧美不卡1区2区3区| 亚洲黄色高清| 国产高潮视频在线观看| 亚洲午夜免费视频| 99国产精品欲| 久久综合伊人77777| 久久精品超碰| 亚洲不卡中文字幕| 亚洲专区免费| 国产白嫩美女无套久久| 亚洲一区在线观看免费| a网站在线观看| 美女精品视频一区| 在线成人免费| 黄色一级片网址| 国产伦精品一区二区三区视频青涩| 免费精品在线视频| 免费成人蒂法| 在线国产99| 久久精品国产久精国产| 一级在线观看视频| 欧美影院一区二区| yw视频在线观看| 国产精品午夜视频| 欧美r级电影| 免费av不卡在线| √…a在线天堂一区| 国产精品无码AV| 超碰精品一区二区三区乱码| 先锋影音网一区二区| 性做爰过程免费播放| 国产精品亚洲一区二区三区在线| 国产人妻精品一区二区三区不卡| 欧美精品丝袜久久久中文字幕| 成人在线观看亚洲| 91视频在线免费观看| 亚洲福利电影| 国产高清一区二区三区四区| 欧美亚洲日本国产| 暖暖日本在线观看| 国产不卡一区二区三区在线观看| 亚洲国产导航| xxxx日本免费| 69av一区二区三区| 福利写真视频网站在线| 久久99精品国产99久久| 视频一区在线视频| 91麻豆精品久久毛片一级| 91精品国产色综合久久ai换脸| 综合图区亚洲| 欧美日韩精品中文字幕一区二区| 免费视频最近日韩| 欧美日韩综合一区二区| 日韩精品视频在线免费观看| 日本在线中文字幕一区二区三区| 一本一道久久a久久精品综合| 国产精品一区二区黑丝| 西西44rtwww国产精品| 最近2019年中文视频免费在线观看| 日本免费一区二区三区视频| 黄色www网站| 国产精品电影一区二区| 亚洲国产综合网| 国产精品18久久久久久首页狼| 在线精品视频在线观看高清| 黄色录像a级片| 欧美日韩一区二区三区在线 | 我要看一级黄色大片| 亚洲欧美国产三级| 青青青免费视频在线2| 成人黄色午夜影院| 亚洲欧美大片| www.超碰在线观看| 尤物tv国产一区| 久久动漫网址| 亚洲网中文字幕| 在线观看一区不卡| 久久亚洲资源| 一区二区在线观看网站| 99re成人在线| a级片免费观看| 国产日韩精品在线观看| 国产欧美日韩一区二区三区在线| 国产精品精品软件男同|