【css】高效地寫(xiě)樣式

日常工作中要门,多人合作模式下如果能統(tǒng)一規(guī)范風(fēng)格,很有利于提高代碼可讀性與可維護(hù)性廓啊;記錄一下用過(guò)的??

命名

結(jié)合 中劃線 和 雙下劃線欢搜, -表示特定意義模塊,__表示下面的子模塊

/* 新聞版塊 */
.news-borad {
    .board__abstract {/* 摘要 */
        .indicator__content {/* 摘要 內(nèi)容 */
          margin: 20px 0;
        }
        .indicator__title {/* 摘要 標(biāo)題*/
          margin-bottom: 13px;
        }
        /* ... */
    }
}

選擇器使用

選擇器嵌套應(yīng)盡量少于 3 級(jí)谴轮,提高代碼 可讀性與可維護(hù)性

/* bad? */
.page .header .login #username input {}

/* good?*/
.page input {}
  • 盡量簡(jiǎn)潔炒瘟,不要使用嵌套過(guò)多過(guò)于復(fù)雜的選擇器。
  • 通配符和屬性選擇器??效率最低第步,需要匹配的元素最多疮装,盡量避免使用。
/* 通配符 */
*.warning {color:red;}
*#maincontent {border: 1px solid blue;}

/* 屬性選擇器:包含 "example" 的鏈接 */
a[href*="example"] {
  background-color: green;
}
  • 避免使用 CSS Expression(為了確保有效性粘都,CSS 表達(dá)式會(huì)進(jìn)行頻繁的求值廓推,耗能大。在很多團(tuán)隊(duì)也中它也是被禁用的)
  • 日常小規(guī)范的積累驯杜,才能有效控制代碼質(zhì)量??

考慮性能的屬性選擇

這些是計(jì)算量較大的屬性

box-shadows
border-radius
transparency
transform(恰當(dāng)使用受啥,也可提高效率??)
CSS filters

需要避免頁(yè)面元素的重繪重排

  • 使用 transform 替代 top,left等屬性的轉(zhuǎn)換
  • 使用 visibility 替換 display: none 鸽心,因?yàn)榍罢咧粫?huì)引起重繪滚局,后者會(huì)引發(fā)回流(改變了布局)
  • 不要把節(jié)點(diǎn)的屬性值放在一個(gè)循環(huán)里當(dāng)成循環(huán)里的變量。(獲取屬性值的時(shí)候顽频,會(huì)引起重新計(jì)算)
  • 不要使用 table 布局藤肢,可能很小的一個(gè)小改動(dòng)會(huì)造成整個(gè)的重新布局
  • 動(dòng)畫(huà)實(shí)現(xiàn)的時(shí)機(jī)選擇,可以選擇使用 requestAnimationFrame

變量使用糯景,函數(shù)使用(scss)

$嘁圈、@mixin@include蟀淮;其中變量的使用最住,既方便統(tǒng)一批量修改,也有利于后期擴(kuò)展主題切換的需求怠惶,具體可參考Vue項(xiàng)目中Scss實(shí)現(xiàn)主題切換
??像這些定義mixins的文件涨缚,文件名頭可以加上下劃線,這樣后面就不會(huì)被編譯成單獨(dú)的css文件了

/* 引用全局變量 */
.main__container {
   box-sizing: border-box;
   border: 1px solid $--color-card-grey;
   background: $--color-white;
}
/* 居中 */
@mixin center {
    position: relative;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
.box {
  @include center;
}

公共樣式策治,常用的搭配脓魏,提出來(lái)用

/*輸入提示文字placeholder*/
.ph-t {
    font-size: 13px;
    color: #B3B7C8;
    cursor: default;
}
/* 清除浮動(dòng) */
.clearfix:after {
    content: "";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

目前的項(xiàng)目里兰吟,甚至連常用的margin,font-size等高頻屬性茂翔,也提取出來(lái)了??混蔼,個(gè)人感覺(jué)用起來(lái)還是比較方便

.ml-20 {
    margin-left: 20px;
}
.fs-16 {
    font-size: 16px;
}

最近看到一個(gè)css框架,感覺(jué)還不錯(cuò)珊燎,哇哦惭嚣!??

Tailwind CSS 是一個(gè)功能類(lèi)優(yōu)先的 CSS 框架,它集成了諸如 flex, pt-4, text-centerrotate-90 這樣的的類(lèi)俐末,它們能直接在腳本標(biāo)記語(yǔ)言中組合起來(lái)料按,構(gòu)建出任何設(shè)計(jì)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末卓箫,一起剝皮案震驚了整個(gè)濱河市载矿,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌烹卒,老刑警劉巖闷盔,帶你破解...
    沈念sama閱讀 219,589評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異旅急,居然都是意外死亡逢勾,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,615評(píng)論 3 396
  • 文/潘曉璐 我一進(jìn)店門(mén)藐吮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)溺拱,“玉大人,你說(shuō)我怎么就攤上這事谣辞∑人ぃ” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,933評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵泥从,是天一觀的道長(zhǎng)句占。 經(jīng)常有香客問(wèn)我,道長(zhǎng)躯嫉,這世上最難降的妖魔是什么纱烘? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,976評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮祈餐,結(jié)果婚禮上擂啥,老公的妹妹穿的比我還像新娘。我一直安慰自己帆阳,他們只是感情好啤它,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,999評(píng)論 6 393
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般变骡。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上芭逝,一...
    開(kāi)封第一講書(shū)人閱讀 51,775評(píng)論 1 307
  • 那天塌碌,我揣著相機(jī)與錄音,去河邊找鬼旬盯。 笑死台妆,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的胖翰。 我是一名探鬼主播接剩,決...
    沈念sama閱讀 40,474評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼萨咳!你這毒婦竟也來(lái)了懊缺?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,359評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤培他,失蹤者是張志新(化名)和其女友劉穎鹃两,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體舀凛,經(jīng)...
    沈念sama閱讀 45,854評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡俊扳,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,007評(píng)論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了猛遍。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片馋记。...
    茶點(diǎn)故事閱讀 40,146評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖懊烤,靈堂內(nèi)的尸體忽然破棺而出梯醒,到底是詐尸還是另有隱情,我是刑警寧澤奸晴,帶...
    沈念sama閱讀 35,826評(píng)論 5 346
  • 正文 年R本政府宣布冤馏,位于F島的核電站,受9級(jí)特大地震影響寄啼,放射性物質(zhì)發(fā)生泄漏逮光。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,484評(píng)論 3 331
  • 文/蒙蒙 一墩划、第九天 我趴在偏房一處隱蔽的房頂上張望涕刚。 院中可真熱鬧,春花似錦乙帮、人聲如沸杜漠。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,029評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)驾茴。三九已至盼樟,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間锈至,已是汗流浹背晨缴。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,153評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留峡捡,地道東北人击碗。 一個(gè)月前我還...
    沈念sama閱讀 48,420評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像们拙,于是被迫代替她去往敵國(guó)和親稍途。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,107評(píng)論 2 356

推薦閱讀更多精彩內(nèi)容