前端編碼規(guī)范

一、命名技巧

1、語義化

即合適標(biāo)簽+合適命名

(1)語義化標(biāo)簽優(yōu)先

(2)基于功能命名、內(nèi)容命名、表現(xiàn)命名

(3)簡略、明了、無后患

tips:可自己改名字、翻譯成英文單詞

2、范例

(1)

<!-- 不好  -->
<div class="article">
  <div class="article_title">編碼規(guī)范</div>
  <div class="the_content">今天講的內(nèi)容是編碼規(guī)范,講師
     <div class="darkbold">若愚</div> @饑人谷</div>
</div>

<!-- 好 -->
<article>
  <h1>編碼規(guī)范</h1>
  <p>今天講的內(nèi)容是編碼規(guī)范,講師
     <b>若愚</b> @饑人谷</p>
</article>

(2)

<!-- 不好  -->
<div class="left"></div>
<div class="red"></div>
<div class="s"></div>
<a class="link" href="#"></a>

<!-- 好 -->
<div class="success"></div>
<div class="theme-color"></div>
<a class="login" href="#"></a>

(3)

<!-- 好 -->
<article class="movies">...</article>
<article class="news">...</article>

<!-- 不好 -->
<article class="blue">...</article>
<article class="redBg mt30 bigText">...</article>

3、命名范例

(1).所有命名都使用英文小寫
推薦:`<div class="main"></div> `
不推薦: `<div class="Main"></div> `
(2).命名用引號包裹
推薦:`<div id="header"></div> `
不推薦: `<div id=header></div> `
(3).用中橫線連接
推薦:`<div class="mod-modal"></div> `
不推薦: `<div class="modModal"></div> `
(4).命名體現(xiàn)功能,不涉及表現(xiàn)樣式(顏色、字體、邊框、背景等
推薦:`<div class="text-lesser"></div>`
不推薦: `<div class="light-grey"></div>`

4、常見命名
第一種:

  • .wrap.wrapper-- 用于外側(cè)包裹
  • .container.ct -- 包裹容器
  • .header -- 用于頭部
  • .body -- 頁面 body
  • .footer -- 頁面尾部
  • aside、sidebar -- 用于側(cè)邊欄
  • .content -- 和header footer對應(yīng),用于主要內(nèi)容
  • .navigation -- 導(dǎo)航元素
  • .pagination -- 分頁
    第二種:
  • .tabs >.tab -- tab 切換
  • .breadcrumbs -- 導(dǎo)航列表、面包屑
  • .dropdown -- 下拉菜單
  • .article -- 文章
  • .main -- 用于主體
  • .thumbnail -- 頭像,小圖像
  • .media -- 媒體資源
  • .panel -- 面板
  • .tooltip -- 鼠標(biāo)放置上去的提示
  • .popup -- 鼠標(biāo)點擊彈出的提示
    第三種:
  • .button.btn -- 按鈕
  • .ad -- 廣告
  • .subnav-- 二級導(dǎo)航
  • .menu -- 菜單
  • .tag -- 標(biāo)簽
  • .message或者.notice -- 提示消息
  • .summary -- 摘要
  • .logo -- logo
  • .search -- 搜索框
  • .login -- 登錄
    第四種:
  • .register -- 注冊
  • .username -- 用戶名
  • .password -- 密碼
  • .banner -- 廣告條
  • `.copyright -- 版權(quán)
  • .modal或者.dialog-- 彈窗
    第五種:
var 名字 = {
  狀態(tài): [
    'inverse',
    'toggled',
    'switched',
    'original',
    'initial',
    'identified',
    'disabled',
    'loading',
    'pending',
    'syncing',
    'default'
  ],
  修飾: [
    'dark',
    'light',
    'shaded',
    'flat',
    'ghost',
    'maroon',
    'pale',
    'intense',
    'twisted',
    'narrow',
    'wide',
    'smooth',
    'separate',
    'clean',
    'sharp',
    'aligned'
  ],
  元素: [
    'pagination',
    'modal',
    'popup',
    'article',
    'story',
    'flash',
    'status',
    'state',
    'media',
    'block',
    'card',
    'teaser',
    'badge',
    'label',
    'sheet',
    'poster',
    'notice',
    'record',
    'entry',
    'item',
    'figure',
    'square',
    'module',
    'bar',
    'button',
    'action',
    'knob'
  ],
  布局: [
    'navigation',
    'wrapper',
    'inner',
    'header',
    'footer',
    'aside',
    'section',
    'divider',
    'content',
    'container',
    'panel',
    'pane',
    'construct',
    'composition',
    'spacing',
    'frame'
  ]
}

二、CSS編碼規(guī)范

1、書寫規(guī)范

  • tab 用兩個空格表示
  • css的 :后加個空格,{前加個空格
  • 每條聲明后都加上分號
  • 換行,而不是放到一行
  • 顏色用小寫,用縮寫, #fff
  • 小數(shù)不用寫前綴, 0.5s -> .5s;0不用加單位
  • 盡量縮寫,margin: 5px 10px 5px 10px ->margin: 5px 10px

2、范例——google編碼規(guī)范

/* Not recommended */
.test {
  display: block;
  height: 100px
}
/* Recommended */
.test {
  display: block;
  height: 100px;
}


/* Not recommended */
h3 {
  font-weight:bold;
}
/* Recommended */
h3 {
  font-weight: bold;
}


/* Not recommended: missing space */
#video{
  margin-top: 1em;
}

/* Not recommended: unnecessary line break */
#video
{
  margin-top: 1em;
}
/* Recommended */
#video {
  margin-top: 1em;
}


/* Not recommended */
a:focus, a:active {
  position: relative; top: 1px;
}
/* Recommended */
h1,
h2,
h3 {
  font-weight: normal;
  line-height: 1.2;
}


/* Always put a blank line (two line breaks) between rules. */
html {
  background: #fff;
}

body {
  margin: auto;
  width: 50%;
}


/* Not recommended */
@import url("http://www.google.com/css/maia.css");

html {
  font-family: "open sans", arial, sans-serif;
}
/* Recommended */
@import url(//www.google.com/css/maia.css);

html {
  font-family: 'open sans', arial, sans-serif;
}

三、參考

  • google html css編碼規(guī)范

google html css編碼規(guī)范

  • bootstrap編碼規(guī)范

bootstrap編碼規(guī)范

其中,對新手前端寫代碼較重要的因素:聲明順序。相關(guān)的屬性聲明應(yīng)當(dāng)歸為一組,并按照下面的順序排列:

Positioning(定位)

Box model(盒模型)

Typographic(與文字相關(guān),字體大小寬高居中)

Visual(顏色相關(guān))

由于定位(positioning)可以從正常的文檔流中移除元素,并且還能覆蓋盒模型(box model)相關(guān)的樣式,因此排在首位。盒模型排在第二位,因為它決定了組件的尺寸和位置。

其他屬性只是影響組件的內(nèi)部(inside)或者是不影響前兩組屬性,因此排在后面。

  • 命名這貨真難

命名這貨真難

總結(jié):鏈接里的文章強烈建議通看一遍

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 基本原則 結(jié)構(gòu)、樣式、行為分離 統(tǒng)一縮進(建議 兩個空格) 文件編碼統(tǒng)一 不帶BOM的UTF-8 一律使用小寫字母...
    KeKeMars閱讀 3,140評論 12 144
  • 很久沒有更新文章了。。。實在是比較忙啊。。。從本身一個iOS開發(fā),現(xiàn)在要兼顧前端、產(chǎn)品、維護等,每天都有不同的事,...
    Ke_Wang閱讀 1,574評論 2 10
  • "字是門面書是屋",我們不會去手寫代碼,但是敲出來的代碼要好看、有條理,這還必須得有一點約束~ 團隊開發(fā)中,每個人...
    郝特么冷閱讀 309評論 0 1
  • 小魚漂亮而又安靜,山東姑娘,兼有山東妹子的豪爽與女性的溫婉,很迷人。她既大膽又怯弱,既天真又務(wù)實,有兩種截然相反的...
    李小喵02閱讀 698評論 1 2
  • 這是臨摹飛樂鳥的彩鉛畫的,學(xué)著一步步畫下來,對于零基礎(chǔ)的我來說就這樣吧,畫畫也只是愛好,不求像大神那般,只為自己畫...
    沐小錦閱讀 331評論 0 0

友情鏈接更多精彩內(nèi)容