日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

前端开发规范

發布時間:2025/5/22 HTML 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 前端开发规范 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一.基本規范

1.基本原則

結構、樣式、行為分離

盡量確保文檔和模板只包含html 結構 ,樣式都放到樣式表里,行為都放到腳本里。

縮進

統一兩個空格縮進,不要使用 Tab 或 空格混搭。

文件編碼

使用不帶 BOM 的UTF-8 編碼。

1.在HTML中指定編碼 <meta charset="utf-8">;

2.無需使用 @charset 指定樣式表的編碼,它默認為 UTF-8;

?

一律使用小寫字母

省略外鏈資源 URL 協議部分

省略外鏈資源 URL 中的 http / https 協議,使 URL 成為相對地址,其他協議的不能省(ftp)。

?

統一注釋

HTML注釋:模塊注釋,區塊注釋;

css注釋:組件塊和子組件塊以及聲明塊之間使用一空行分割,子組件塊之間三空行分隔。

js注釋:單行注釋,多行注釋,函數、方法注釋,文件注釋。

?

2.html

遵循html標準和語義,盡量使用最少的標簽并保持最小的復雜度。

2.1 通用約定

標簽

* 自閉合標簽,無需閉合(例如:img , input , br , hr 等);

* 可選的閉合標簽,需閉合(例如</li> 或 </body> 等);

* 盡量減少標簽數量;

Class 與 ID

* class應以功能或內容命名,不以表現形式命名;

* class 與 id 單詞字母小寫,多個單詞組成時,采用中劃線 -? 分隔;

* 使用唯一的 id 作為 js ,同時避免創建無樣式信息的class;

屬性順序

html屬性應按照特定的順序出現以保證易讀性。

id , class , name , data-xxx , src , for , type , href , title? , alt , aria-xxx , role.

引號

屬性的定義,統一使用雙引號。

嵌套

a 不允許嵌套 div 這種約束屬于語義嵌套約束,與之區別的約束還有嚴格嵌套約束,比如 a 不允許嵌套 a 。

嚴格嵌套約束在所有的瀏覽器下都不被允許;而語義嵌套約束,瀏覽器大多數會容錯處理,生成的文檔樹可能相互不大一樣。

語義嵌套約束

* <li> 用于 <ul> 或 <ol> 下;

* <dd> ,<dt>?用于? <dl> 下;

* <thead> ,<tbody> , <tfoot> ,<tr>?,<td>?用于??<table> 下;

嚴格嵌套約束

* inline-Level 元素,僅可以包含文本或者其他 inline-Level 元素;

* <a> 里面不可以嵌套交互元素 <a> , <button> , <select> 等;

* <p>里不可以嵌套塊級元素??<div> , <h1> ~ <h6> , <p> ,?<ul>/<ol>/<li> ,??<dl>/<dt>/<dd> , <form> 等;

布爾值屬性

html5 規范中 display , checked , selected 等屬性不用設置值。

2.2 語義化

2.3 HEAD

?

3. CSS

3.1 代碼組織

* 以組件為單位組織代碼段;

* 制定一致的注釋規范;

*?組件塊和子組件塊以及聲明塊之間使用一空行分割,子組件塊之間三空行分隔。

Class 與 ID

* 使用語義化、通用的命名方式;

* 使用連字符 - 作為ID,class 名稱界定符,不要駝峰命名法和下劃線;

* 避免選擇器嵌套層級過多,盡量少于3級;

* 避免選擇器, Class , ID 疊加使用;

聲明塊格式

* 選擇器分組時,保持獨立的選擇器獨占一行;

* 聲明塊的左括號 { 前添加一個空格;

* 聲明塊的右括號 } 應獨占一行;

* 聲明語句中的 :后應該添加一個空格;

* 應以分號 ; 結尾;

* 一般以逗號分隔的屬性值,每個逗號后應該添加一個空格;

* rgb() 、rgba() 、hsl() 、hsla() 或rect() 括號內的值,逗號分隔,但逗號后不添加一個空格;

* 對于屬性值或顏色參數,省略小于1 的小數前面的0;

* 十六進制值應該全部小寫和盡量簡寫;

* 避免為 0 指定單位;

* 將媒體查詢放在盡可能相關規則的附近。不要單獨打包放在單一文件中,避免遺忘;

* 不要用 @import ,與 <link> 相比 ,@import 要慢很多,會增加額外請求。替代辦法:

  使用多個元素;

  通過 Sass 或 Less 類似的 css 預處理器將多個css編譯為一個文件;

  其他 css 文件合并工具;

?

鏈接的樣式順序

?

3.2 模塊組織

組件命名

?

Components 最少以兩個單詞命名, 通過 -? 分離;

* 點贊按鈕( .like-button )

* 搜索框( .search-form)

* 文章卡片( .article-card)

?ELements(元素)

ELements 是 Components 中的元素

ELements 的類名盡可能取一個單詞;倘若使用兩個及以上的單詞表達,不應該使用中劃線和下劃線。

避免標簽選擇器。

?

?Variants 的 classname 應該帶有前綴中劃線 - ;

?

轉載于:https://www.cnblogs.com/wangqian888/p/11195215.html

總結

以上是生活随笔為你收集整理的前端开发规范的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。