1. 程式人生 > >WEB前端開發規範文件-引用

WEB前端開發規範文件-引用

引用說明:原文來自於 http://www.iteye.com/articles/2971 的再次引用,為了方便本人閱讀,文字格式略有調整。

規範目的
  為提高團隊協作效率, 便於後臺人員新增功能及前端後期優化維護, 輸出高質量的文件, 特制訂此文件. 本規範文件一經確認, 前端開發人員必 須按本文件規範進行前臺頁面開發. 本文件如有不對或者不合適的地方請及時提出, 經討論決定後方可更改.

基本準則
  符合web標準, 語義化html, 結構表現行為分離, 相容性優良. 頁面效能方面, 程式碼要求簡潔明瞭有序, 儘可能的減小伺服器負載, 保證最快的 解析速度.

檔案規範
  1. html, css, js, images檔案均歸檔至約定的目錄中;
  2. html檔案命名: 英文命名, 字尾.htm. 同時將對應介面稿放於同目錄中, 若介面稿命名為中文, 請重新命名與html檔案同名, 以方便後端新增 功能時查詢對應頁面;
  3. css檔案命名: 英文命名, 字尾.css. 共用base.css, 首頁index.css, 其他頁面依實際模組需求命名.;
  4. Js檔案命名: 英文命名, 字尾.js. 共用common.js, 其他依實際模組需求命名.

html書寫規範


  1. 文件型別宣告及編碼: 統一為html5宣告型別html>; 編碼統一為<meta>, 書寫時利用IDE實現層 次分明的縮排;
  2. 非特殊情況下樣式檔案必須外鏈至...之間;非特殊情況下JavaScript檔案必須外鏈至頁面底部;
  3. 引入樣式檔案或JavaScript檔案時, 須略去預設型別宣告, 寫法如下:

div css xhtml xml Example Source Code Example Source Code [www.52css.com] <link>
<style>...</style>
<script></script>


  4. 引入JS庫檔案, 檔名須包含庫名稱及版本號及是否為壓縮版, 比如jquery-1.4.1.min.js; 引入外掛, 檔名格式為庫名稱+外掛名稱, 比 如jQuery.cookie.js;
  5. 所有編碼均遵循xhtml標準, 標籤 & 屬性 & 屬性命名 必須由小寫字母及下劃線數字組成, 且所有標籤必須閉合, 包括 br (

), hr(

)等; 屬性值必須用雙引號包括;
   6. 充分利用無相容性問題的html自身標籤, 比如span, em, strong, optgroup, label,等等; 需要為html 元素新增自定義屬性的時候, 首先 要考慮下有沒有預設的已有的合適標籤去設定, 如果沒有, 可以使用須以"data-"為字首來新增自定義屬性,避免 使用"data:"等其他命名方式;
  7. 語義化html, 如 標題根據重要性用h*(同一頁面只能有一個h1), 段落標記用p, 列表用ul, 內聯元素中不可巢狀塊級元素;
  8. 儘可能減少div巢狀, 如

歡迎訪問XXX, 您的用 戶名是 使用者名稱

完全可以用以下程式碼替代: 

歡迎 訪問XXX, 您的使用者名稱是使用者名稱

;
  9. 書寫連結地址時, 必須避免重定向,例如:href="http://itaolun.com/ ", 即須在URL地址後面加上“/”;
  10. 在頁面中儘量避免使用style屬性,即style="…";
  11. 必須為含有描述性表單元素(input, textarea)新增label, 如

div css xhtml xml Example Source Code Example Source Code [www.52css.com]

姓 名: 


須寫成:

姓 名: 


  12. 能以背景形式呈現的圖片, 儘量寫入css樣式中;
  13. 重要圖片必須加上alt屬性; 給重要的元素和截斷的元素加上title;
  14. 給區塊程式碼及重要功能(比如迴圈)加上註釋, 方便後臺新增功能;
  15. 特殊符號使用: 儘可能使用程式碼替代: 比如 (>) & 空格( ) & »(») 等等;
  16. 書寫頁面過程中, 請考慮向後擴充套件性;
  17. class & id 參見 css書寫規範.

css書寫規範
  1. 編碼統一為utf-8;
   2. 協作開發及分工: i會根據各個模組, 同時根據頁面相似程式, 事先寫好大體框架檔案, 分配給前端人員實現內部結構&表現& 行為;  共用css檔案base.css由i書寫, 協作開發過程中, 每個頁面請務必都要引入, 此檔案包含reset及頭部底部樣式, 此檔案不可 隨意修改;
  3. class與id的使用: id是唯一的並是父級的, class是可以重複的並是子級的, 所以id僅使用在大的模組上, class可用在重複使用率高及子級 中; id原則上都是由我分發框架檔案時命名的, 為JavaScript預留鉤子的除外;
  4. 為JavaScript預留鉤子的命名, 請以 js_ 起始, 比如: js_hide, js_show;
   5. class與id命名: 大的框架命名比如header/footer/wrapper/left/right之類的在2中由i統一命名.其他樣 式名稱由 小寫英文 & 數 字 & _ 來組合命名, 如i_comment, fontred, width200; 避免使用中文 拼音, 儘量使用簡易的單詞組合; 總之, 命名要語義化, 簡明 化.
  6. 規避class與id命名(此條重要, 若有不明白請及時與i溝通):
    a, 通過從屬寫法規避, 示例見d;
    b, 取父級元素id/class命名部分命名, 示例見d;
    c, 重複使用率高的命名, 請以自己代號加下劃線起始, 比如i_clear;
    d, a,b兩條, 適用於在2中已建好框架的頁面, 如,

div css xhtml xml Example Source Code Example Source Code [www.52css.com] 要在2中已建好框架的頁面程式碼中加入新的div元 素,
按a命名法則:  ... ,
樣式寫法:  #mainnav  .firstnav{.......}
按b命名法則:  ... ,
樣式寫法:  .main_firstnav{.......}


  7. css屬性書寫順序, 建議遵循:  佈局定位屬性-->自身屬性-->文字屬性-->其他屬性. 此條可根據自身習慣書寫, 但儘量保證同類屬 性寫在一起.

div css xhtml xml Example Source Code Example Source Code [www.52css.com] 屬性列舉: 
佈局定位屬性主要包括: display & list-style & position(相應 的 top,right,bottom,left) & 
float & clear & visibility & overflow; 
自身屬性主要包括: width & height & margin & padding & border & background; 
文字屬性主要包括:color & font & text-decoration & text-align & vertical-align & white- space & 
其他 & content; 
我所列出的這些屬性只是最常用到的, 並不代表全部;


  8. 書寫程式碼前, 考慮並提高樣式重複使用率;
  9. 充分利用html自身屬性及樣式繼承原理減少程式碼量, 比如:

div css xhtml xml Example Source Code Example Source Code [www.52css.com]
  • 這兒是標題列表2010-09- 15

定義
ul.list li{position:relative}  ul.list li span{position:absolute; right:0}
即可實現日期居右顯示


  10. 樣式表中中文字型名, 請務必轉碼成unicode碼, 以避免編碼錯誤時亂碼;
  11. 背景圖片請儘可能使用sprite技術, 減小http請求, 考慮到多人協作開發, sprite按模組製作;
  12. 使用table標籤時(儘量避免使用table標籤), 請不要用width/ height/cellspacing/cellpadding等table屬性直接定義表現, 應儘可能的利用table自身私有屬性分離結構與表現 , 如

div css xhtml xml Example Source Code Example Source Code [www.52css.com] thead,tr,th,td,tbody,tfoot,colgroup,scope;
 (cellspaing及cellpadding的css控制方法: 
table{border:0;margin:0;border-collapse:collapse;} table th, table td{padding:0;} , 
base.css檔案中我會初始化表格樣式)


  13. 杜絕使用<meta> 相容 ie8;
  14. 用png圖片做圖片時, 要求圖片格式為png-8格式,若png-8實在影響圖片質量或其中有半透明效果, 請為ie6單獨定義背景:

div css xhtml xml Example Source Code Example Source Code [www.52css.com] _background:none;_filter:progid:DXImageTransform.Microsoft.AlphaImageLoader 
(sizingMethod=crop, src=’img/bg.png’);


  15. 避免相容性屬性的使用, 比如text-shadow || css3的相關屬性;
  16. 減少使用影響效能的屬性, 比如position:absolute || float ;
  17. 必須為大區塊樣式添加註釋, 小區塊適量註釋;
  18. 程式碼縮排與格式: 建議單行書寫, 可根據自身習慣, 後期優化i會統一處理;

JavaScript書寫規範
  1. 檔案編碼統一為utf-8, 書寫過程過, 每行程式碼結束必須有分號; 原則上所有功能均根據XXX專案需求原生開發, 以避免網上down下來的程式碼造 成的程式碼汙染(沉冗程式碼 || 與現有程式碼衝突 || ...);
  2. 庫引入: 原則上僅引入jQuery庫, 若需引入第三方庫, 須與團隊其他人員討論決定;
  3. 變數命名: 駝峰式命名. 原生JavaScript變數要求是純英文字母, 首字母須小寫, 如iTaoLun;

div css xhtml xml Example Source Code Example Source Code [www.52css.com] jQuery變數要求首字元為'_', 其他與原生JavaScript 規則相同, 如: _iTaoLun;
另, 要求變數集中宣告, 避免全域性變數.


  4. 類命名: 首字母大寫, 駝峰式命名. 如 ITaoLun;
  5. 函式命名: 首字母小寫駝峰式命名. 如iTaoLun();
  6. 命名語義化, 儘可能利用英文單詞或其縮寫;
  7. 儘量避免使用存在相容性及消耗資源的方法或屬性, 比如eval() & innerText;
  8. 後期優化中, JavaScript非註釋類中文字元須轉換成unicode編碼使用, 以避免編碼錯誤時亂碼顯示;
  9. 程式碼結構明瞭, 加適量註釋. 提高函式重用率;
  10. 注重與html分離, 減小reflow, 注重效能.

圖片規範
  1. 所有頁面元素類圖片均放入img資料夾, 測試用圖片放於img/demoimg資料夾;
  2. 圖片格式僅限於gif || png || jpg;
   3. 命名全部用小寫英文字母 || 數字 || _ 的組合,其中不得包含漢字 || 空格 || 特殊字元;儘量用易懂的詞彙, 便於團隊其他成員 理 解; 另, 命名分頭尾兩部分, 用下劃線隔開, 比如ad_left01.gif || btn_submit.gif;
  4. 在保證視覺效果的情況下選擇最小的圖片格式與圖片質量, 以減少載入時間;
  5. 儘量避免使用半透明的png圖片(若使用, 請參考css規範相關說明);
  6. 運用css sprite技術集中小的背景圖或圖示, 減小頁面http請求, 但注意, 請務必在對應的sprite psd源圖中劃參考線, 並儲存至img目錄 下.

註釋規範
  1. html註釋: 註釋格式 <!--這兒是註釋-->, '--'只能在註釋的始末位置,不可置入註釋文字區域;
  2. css註釋: 註釋格式 /*這兒是註釋*/;
  3. JavaScript註釋, 單行註釋使用'//這兒是單行註釋' ,多行註釋使用 /* 這兒有多行註釋 */;

開發及測試工具約定
  建議使用Aptana || Dw || Vim , 亦可根據自己喜好選擇, 但須遵循如下原則:
  1. 不可利用IDE的檢視模式'畫'程式碼;
  2. 不可利用IDE生成相關功能程式碼, 比如Dw內建的一些功能js;
  3. 編碼必須格式化, 比如縮排;
  測試工具: 前期開發僅測試FireFox & IE6 & IE7 & IE8 , 後期優化時加入Opera & Chrome & Safari;
  建議測試順序: FireFox-->IE7-->IE8-->IE6-->Opera-->Chrome-->Safari, 建議安裝firebug及IE Tab Plus外掛.

其他規範
  1. 開發過程中嚴格按分工完成頁面, 以提高css複用率, 避免重複開發;
  2. 減小沉冗程式碼, 書寫所有人都可以看的懂的程式碼. 簡潔易懂是一種美德. 為使用者著想, 為伺服器著想.

相關推薦

WEB前端開發規範-引用

引用說明:原文來自於 http://www.iteye.com/articles/2971 的再次引用,為了方便本人閱讀,文字格式略有調整。 規範目的   為提高團隊協作效率, 便於後臺人員新增功能及前端後期優化維護, 輸出高質量的文件, 特制訂此文件. 本規範文件一經

WEB前端開發規範(僅供參考)

規範目的   為提高團隊協作效率, 便於後臺人員新增功能及前端後期優化維護, 輸出高質量的文件, 特制訂此文件. 本規範文件一經確認, 前端開發人員必 須按本文件規範進行前臺頁面開發. 本文件如有不對或者不合適的地方請及時提出, 經討論決定後方可更改.基本準則   符合we

好程序員web前端分享CSS引用的最優方法

部分 必須 引入 gree 開始 站點 調用 web 加載 好程序員web前端分享CSS文件引用的最優方法,在html總引入css文件的方法:   1鏈接式:   2導入式:   區別:   使用鏈接式時,會在加載頁面主體部分之前加載css文件,這樣現實出來的頁面一開始就是

Web前端開發規範收集

mod 流量 idt jquery version 目的 文件夾 -i service 在Web開發中,後端跟前端配合非常easy出現故障。這時我們就須要一些規則來約束前端任意的編寫。 CSS編程規範 1. 屬性書寫基本順序 a. 先位置屬

Web前端開發規範手冊

常用 菜單 ima 代碼規範 反饋 o-c css樣式 遇到 人員 一、規範目的 1.1 概述 .....................................................................................

【分享】Web前端開發第三方插大全

slim 語法 top 配件 svg 上下文菜單 meta 時序圖 nio 收集整理了一些Web前端開發比較成熟的第三方插件,分享給大家。 ******************************************************************

Web前端開發規範

布局 fig 小技巧 配置 web nav 文件 語句 this 1.文件書寫規範 1.1 基本要求 1) 頁面標簽的屬性和值用雙引號引起來 2) 所有頁面編碼均采用utf-8 1.2 書寫規範 1)文檔類型聲明及編碼:統一為

web前端開發工程師需要注意的web前端開發規範有哪些

從事web前端開發工作我們就需要了解web前端開發的規範,這樣才能保證web前端開發工程師們可以高效快速的完成工作,本篇文章小編和大家分享一下web前端開發工程師需要注意的web前端開發規範有哪些,希望對小夥伴們有所幫助。 一、css書寫規範 1. 編碼統一為utf-8; 2. 協

linux web伺服器開發技術

Robin(wrhttpd) is a very simple and very fast web server, it's object for ajax and Web Application ,and of course it's cross-platform,

Web前端開發規範 : 檔案命名規則

Web前端開發規範 1.檔案命名規則 1.1檔名稱的命名規則 統一用小寫的英文字母,數字和下劃線的組合,不得包含漢字空格和特殊字元。 原則: 1)方便理解,見名之意 ​ 2)方面查詢 1.2索引檔案的命名規則(首頁面) i

前端開發框架

前端開發框架—Vue.js,webpackVue.js:輕 效的前端元件化 案. Vue.js 是 款極簡的 mvvm 框架,如果讓我 個詞來形容它,就是 “輕·巧” 。如果 話來描述它,它能夠集眾多優秀逐流的前端框架之 成,但同時保持簡單 。廢話 多說,來看 個 :<script src="vue.

Web前端開發規範一例

[size=large][color=red]規範目的[/color]為提高團隊協作效率, 便於後臺人員新增功能及前端後期優化維護, 輸出高質量的文件, 特制訂此文件. 本規範文件一經確認, 前端開發人員必 須按本文件規範進行前臺頁面開發. 本文件如有不對或者不合適的地方請及

開發的目錄規範/定制程序的入口/引用配置/引用自定義模塊/logging模塊/日誌繼承與propagate屬性/通過字典導入配置/日誌模塊在項目中的使用

clas common 邏輯 導入 字典 pro gpo 項目 日誌模塊 02.軟件開發的目錄規範單獨的文件放單獨的東西py文件src 程序的核心有關setting 配置有關common 常用功能的集合體文件夾lib        庫log      日誌conf 配

Web前端規範-騰訊AlloyTeam

CSS 語法 使用四個空格的 soft tabs — 這是保證程式碼在各種環境下顯示一致的唯一方式。 使用組合選擇器時,保持每個獨立的選擇器佔用一行。 為了程式碼的易讀性,在每個宣告的左括號前增加一個空格。 宣告塊的右括號應該另起一行。 每條宣告 :

Web前端開發人員實用Chrome插收集

dev dai 不同 裏的 png 刪除 ddc .org loj 越來越多的前端開發人員喜歡在Chrome裏開發調試代碼,Chrome有許多優秀的插件可以幫助前端開發人員極大的提高工作效率。尤其Chrome本身是可以登錄的,登錄後你所有的插件都會自動同步到每一個登錄後的C

前端web js,css進行壓縮混淆

js css壓縮 混淆下載 yuicompressor jar包到本地路徑 寫一個批處理腳本compressJs.bat,將要壓縮的js文件放在批處理文件的同一路徑,yuicompressor.jar也放在同一路徑 運行批處理文件,在該路徑下會生成一個min文件夾,裏面的*.min.jar就是壓縮混淆後的js

Web前端開發標準規範總結

Web前端作為開發團隊中不可或缺的一部分,需要按照相關規定進行合理編寫(一部分不良習慣可能給自己和他人造成不必要的麻煩)。不同公司不同團隊具有不同的規範和文件。下面是根據不同企業和團隊的要求進行全面詳細的整理結果。備註:實際開發請以本公司的規範為標準。 A.基本原則 符合web標準(UTF-

php的引用

路徑 class 定義 作用 當前 style font line st3 最近研究公司代碼時發現了set_include_path(dirname(__FILE__));這樣一行代碼,在網上查了些資料,才把這個方法的作用弄清楚。 首先,dirname(__FILE__)這

web端設計和web前端開發 的區別

mage ima cnblogs 前端開發 src web前端開發 log alt .cn web端設計和web前端開發 的區別

前端下載excel功能的三種方法

light nbsp html github 支持 返回 但是 inpu brush 1 從後端接收json數據,前端處理生成excel下載 JsonExportExcel的github地址:https://github.com/cuikangjie/JsonExpor