前端編碼規(guī)范那些事

為了編寫出更高可讀性父款,結(jié)構(gòu)更加清晰且冗余較少的代碼浅役,前端工程師們總結(jié)出了一些前端的編碼規(guī)范斩松,它們涵蓋了前端的所有部分伶唯,包括HTML觉既、CSS和JS,以下也是圍繞這三個(gè)方面,對(duì)這些前端代碼的編碼規(guī)范做一個(gè)大致的復(fù)習(xí)和鞏固瞪讼。

一钧椰、HTML的編碼規(guī)范

  • 首當(dāng)其沖的自然就是<!DOCTYPE html>,文檔類型聲明符欠。在不同的時(shí)期嫡霞,<!DOCTYPE html>的寫法有所不同,但它最重要的功能對(duì)文檔的類型進(jìn)行聲明卻從未更改希柿,如果不添加該聲明诊沪,瀏覽器渲染時(shí)會(huì)以怪異模式進(jìn)行文檔渲染。
文檔類型聲明
  • 語言類型和編碼類型要寫曾撤,他們通常的寫法如下:(語言類型寫在根節(jié)點(diǎn)<html>上端姚,編碼類型寫在<meta>便簽里):
語言類型和編碼類型
  • JS引入寫在<body>標(biāo)簽的最后可有效防止因?yàn)镴S文件加載不出來而導(dǎo)致的白屏問題:
JS腳本引入的書寫位置
  • 注重html的語義化,使用相應(yīng)內(nèi)容的標(biāo)簽:以下是推薦和不推薦的寫法
語義化
  • 友好的圖片挤悉,盡量寫<img>標(biāo)簽alt和title屬性渐裸,alt屬性用于圖片掛掉時(shí)對(duì)圖片內(nèi)容進(jìn)行提示,title用于鼠標(biāo)浮于圖片上時(shí)進(jìn)行內(nèi)容提示(裝飾性的圖片無需填寫装悲,用于省字符數(shù))
title屬性作用
alt圖片內(nèi)容提示
  • H5引入CSS和JS時(shí)可以不寫type屬性昏鹃,style標(biāo)簽?zāi)J(rèn)type是CSS文件,script標(biāo)簽type默認(rèn)是JS文件
引入外鏈
  • 引號(hào)問題诀诊,在HTML中的書寫盡量使用雙引號(hào)""洞渤,少使用單引號(hào)'',這點(diǎn)也要看公司的規(guī)定而言属瓣,但是引號(hào)的使用要統(tǒng)一您宪,不要一下單引號(hào)一下雙引號(hào):
不推薦的引號(hào)用法
  • H5中,空白元素標(biāo)簽如link,meta,img,br,hr,input等奠涌,在結(jié)尾不需要添加/符號(hào)進(jìn)行結(jié)束
空白標(biāo)簽的結(jié)束不需要'/'
  • 其它:1宪巨、注意嵌套標(biāo)簽的結(jié)束;2溜畅、JS和CSS盡量使用外鏈捏卓,有助于樣式與內(nèi)容的分離;3慈格、盡量書寫注釋對(duì)HTML內(nèi)容結(jié)構(gòu)進(jìn)行梳理怠晴;

二、CSS編碼規(guī)范

  • CSS書寫的順序
    1.位置相關(guān)(position浴捆,float蒜田,display,top选泻,right等)冲粤;
    2.盒模型相關(guān)(width美莫,height,margin梯捕,padding等)厢呵;
    3.字體相關(guān)(size,color傀顾,family襟铭,line-height等);
    4.背景和邊框(background短曾,border)寒砖;
    5.其它(transition等);
正確順序
  • 盡量使用CSS縮寫精簡(jiǎn)代碼(字體嫉拐,邊框入撒,內(nèi)/外邊距等)
CSS樣式縮寫
  • 選擇器與后面的'{'要有一個(gè)空格,樣式屬性與值之間要有一個(gè)空格
空格
  • 多個(gè)選擇器同時(shí)用時(shí)要有換行
多選擇器之間換行
  • 0不需要加單位椭岩,0.n的單位不需要寫0
單位書寫
  • 使用16進(jìn)制顏色時(shí)茅逮,當(dāng)每?jī)晌幌嗤目梢赃M(jìn)行縮寫
顏色縮寫
  • 其它:1、每條樣式用;進(jìn)行結(jié)尾判哥;2献雅、樣式要進(jìn)行縮進(jìn);3塌计、盡量避免使用標(biāo)簽選擇器挺身,可以使用子選擇器和兄弟選擇器;

三锌仅、JS書寫規(guī)范

  • 變量聲明用var章钾,多個(gè)變量命名可以用一個(gè)var,然后用逗號(hào),進(jìn)行分隔:
變量命名
  • 變量盡量寫在變量聲明中:
變量書寫
  • 立即執(zhí)行函數(shù)書寫:盡量將整個(gè)函數(shù)包裹在括號(hào)內(nèi):
立即執(zhí)行函數(shù)書寫
  • 每個(gè)獨(dú)立語句用;進(jìn)行結(jié)束:
用分號(hào)進(jìn)行語句結(jié)束
  • 其它規(guī)范:1热芹、注意函數(shù)內(nèi)部的縮進(jìn)贱傀;2、盡量編寫注釋伊脓;3府寒、格式對(duì)齊以及縮進(jìn);

四报腔、命名規(guī)則

  • CSS選擇器的命名規(guī)則
    1.命名用英文小寫字母書寫株搔;
    2.命名體現(xiàn)出內(nèi)容、功能或者樣式(樣式命名少用)纯蛾,注重語義化纤房;
    3.多個(gè)單詞的命名使用中橫線-進(jìn)行連接;
    4.id選擇器在HTML中只在大區(qū)塊上進(jìn)行添加翻诉,盡量少用炮姨,其它可使用類選擇器捌刮;
    5.命名如果采用縮寫要使人能看懂,不要使用無意義的命名剑令;
    6.屬性的值要用雙引號(hào)括起來,如:class = "nav"; 拄查;

  • JS的命名
    1.命名采用駝峰式命名吁津,第一個(gè)單詞小寫,后面的單詞首字母大寫堕扶;
    2.函數(shù)的命名使用動(dòng)詞碍脏,或者動(dòng)詞+名詞的形式;

五稍算、總結(jié)

1.做到語義化典尾,方便閱讀和優(yōu)化;
2.代碼盡量簡(jiǎn)單糊探,結(jié)構(gòu)明晰钾埂,冗余少;
3.注意書寫注釋科平;
4.注意健壯性和可復(fù)用性褥紫;

文章著作權(quán)歸饑人谷_大春和饑人谷所有,轉(zhuǎn)載須說明來源

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末瞪慧,一起剝皮案震驚了整個(gè)濱河市髓考,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌弃酌,老刑警劉巖氨菇,帶你破解...
    沈念sama閱讀 221,635評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異妓湘,居然都是意外死亡查蓉,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門榜贴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來奶是,“玉大人,你說我怎么就攤上這事竣灌∧羯常” “怎么了?”我有些...
    開封第一講書人閱讀 168,083評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵初嘹,是天一觀的道長(zhǎng)及汉。 經(jīng)常有香客問我,道長(zhǎng)屯烦,這世上最難降的妖魔是什么坷随? 我笑而不...
    開封第一講書人閱讀 59,640評(píng)論 1 296
  • 正文 為了忘掉前任房铭,我火速辦了婚禮,結(jié)果婚禮上温眉,老公的妹妹穿的比我還像新娘缸匪。我一直安慰自己,他們只是感情好类溢,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,640評(píng)論 6 397
  • 文/花漫 我一把揭開白布凌蔬。 她就那樣靜靜地躺著,像睡著了一般闯冷。 火紅的嫁衣襯著肌膚如雪砂心。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,262評(píng)論 1 308
  • 那天蛇耀,我揣著相機(jī)與錄音辩诞,去河邊找鬼。 笑死纺涤,一個(gè)胖子當(dāng)著我的面吹牛译暂,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播撩炊,決...
    沈念sama閱讀 40,833評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼秧秉,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了衰抑?” 一聲冷哼從身側(cè)響起象迎,我...
    開封第一講書人閱讀 39,736評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎呛踊,沒想到半個(gè)月后砾淌,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,280評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡谭网,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,369評(píng)論 3 340
  • 正文 我和宋清朗相戀三年汪厨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片愉择。...
    茶點(diǎn)故事閱讀 40,503評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡劫乱,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出锥涕,到底是詐尸還是另有隱情衷戈,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布层坠,位于F島的核電站殖妇,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏破花。R本人自食惡果不足惜谦趣,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,870評(píng)論 3 333
  • 文/蒙蒙 一疲吸、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧前鹅,春花似錦摘悴、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至除盏,卻和暖如春叉橱,著一層夾襖步出監(jiān)牢的瞬間挫以,已是汗流浹背者蠕。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留掐松,地道東北人踱侣。 一個(gè)月前我還...
    沈念sama閱讀 48,909評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像大磺,于是被迫代替她去往敵國(guó)和親抡句。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,512評(píng)論 2 359

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

  • 在線閱讀 http://interview.poetries.top[http://interview.poetr...
    程序員poetry閱讀 114,423評(píng)論 24 450
  • 什么是html杠愧? html是一種網(wǎng)頁(yè)標(biāo)記語言待榔,叫超文本標(biāo)記語言,我們平時(shí)上網(wǎng)所看到的所有網(wǎng)頁(yè)均來自于html流济,英文...
    波段頂?shù)?/span>閱讀 8,381評(píng)論 2 7
  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案锐锣? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,759評(píng)論 1 92
  • 從此以后,再難過绳瘟,也和你沒關(guān)系
    輕舞飛揚(yáng)MyAll閱讀 212評(píng)論 0 0
  • 聊騷(盡量不讓指針指到紅線是OK的雕憔,撥動(dòng)到女生的那個(gè)癢點(diǎn)就OK了) 聊騷可以較快的KLNO 比如:一開始 猜一猜星...
    CNBLUEone閱讀 438評(píng)論 0 0