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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > HTML >内容正文

HTML

开发备必:WEB前端开发规范文档

發(fā)布時(shí)間:2025/3/13 HTML 73 豆豆
生活随笔 收集整理的這篇文章主要介紹了 开发备必:WEB前端开发规范文档 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

規(guī)范目的
  為提高團(tuán)隊(duì)協(xié)作效率,?便于后臺(tái)人員添加功能及前端后期優(yōu)化維護(hù),?輸出高質(zhì)量的文檔,?特制訂此文檔.?本規(guī)范文檔一經(jīng)確認(rèn),?前端開發(fā)人員必?須按本文檔規(guī)范進(jìn)行前臺(tái)頁(yè)面開發(fā).?本文檔如有不對(duì)或者不合適的地方請(qǐng)及時(shí)提出,?經(jīng)討論決定后方可更改.

基本準(zhǔn)則
  符合web標(biāo)準(zhǔn),?語(yǔ)義化html,?結(jié)構(gòu)表現(xiàn)行為分離,?兼容性優(yōu)良.?頁(yè)面性能方面,?代碼要求簡(jiǎn)潔明了有序,?盡可能的減小服務(wù)器負(fù)載,?保證最快的?解析速度.

文件規(guī)范
  1.?html,?css,?js,?images文件均歸檔至<系統(tǒng)開發(fā)規(guī)范>約定的目錄中;
  2.?html文件命名:?英文命名,?后綴.htm.?同時(shí)將對(duì)應(yīng)界面稿放于同目錄中,?若界面稿命名為中文,?請(qǐng)重命名與html文件同名,?以方便后端添加?功能時(shí)查找對(duì)應(yīng)頁(yè)面;
  3.?css文件命名:?英文命名,?后綴.css.?共用base.css,?首頁(yè)index.css,?其他頁(yè)面依實(shí)際模塊需求命名.;
  4.?Js文件命名:?英文命名,?后綴.js.?共用common.js,?其他依實(shí)際模塊需求命名.

html書寫規(guī)范
  1.?文檔類型聲明及編碼:?統(tǒng)一為html5聲明類型<!DOCTYPE?html>;?編碼統(tǒng)一為<meta?charset="gbk"?/>,?書寫時(shí)利用IDE實(shí)現(xiàn)層?次分明的縮進(jìn);
  2.?非特殊情況下樣式文件必須外鏈至<head>...</head>之間;非特殊情況下JavaScript文件必須外鏈至頁(yè)面底部;
  3.?引入樣式文件或JavaScript文件時(shí),?須略去默認(rèn)類型聲明,?寫法如下:

Example Source Code [www.52css.com] <link?rel="stylesheet"?href="..."?/>
<style>...</style>
<script?src="..."></script>


  4.?引入JS庫(kù)文件,?文件名須包含庫(kù)名稱及版本號(hào)及是否為壓縮版,?比如jquery-1.4.1.min.js;?引入插件,?文件名格式為庫(kù)名稱+插件名稱,?比?如jQuery.cookie.js;
  5.?所有編碼均遵循xhtml標(biāo)準(zhǔn),?標(biāo)簽?&?屬性?&?屬性命名?必須由小寫字母及下劃線數(shù)字組成,?且所有標(biāo)簽必須閉合,?包括?br?(<br?/>),?hr(<hr?/>)等;?屬性值必須用雙引號(hào)包括;
  6.?充分利用無兼容性問題的html自身標(biāo)簽,?比如span,?em,?strong,?optgroup,?label,等等;?需要為html元素添加自定義屬性的時(shí)候,?首先?要考慮下有沒有默認(rèn)的已有的合適標(biāo)簽去設(shè)置,?如果沒有,?可以使用須以"data-"為前綴來添加自定義屬性,避免使用"data:"等其他命名方式;
  7.?語(yǔ)義化html,?如?標(biāo)題根據(jù)重要性用h*(同一頁(yè)面只能有一個(gè)h1),?段落標(biāo)記用p,?列表用ul,?內(nèi)聯(lián)元素中不可嵌套塊級(jí)元素;
  8.?盡可能減少div嵌套,?如<div?class="box"><div?class="welcome">歡迎訪問XXX,?您的用?戶名是<div?class="name">用戶名</div></div></div>完全可以用以下代碼替代:?<div?class="box"><p>歡迎?訪問XXX,?您的用戶名是<span>用戶名</span></p></div>;
  9.?書寫鏈接地址時(shí),?必須避免重定向,例如:href="http://itaolun.com/",?即須在URL地址后面加上“/”;
  10.?在頁(yè)面中盡量避免使用style屬性,即style="…";
  11.?必須為含有描述性表單元素(input,?textarea)添加label,?如

Example Source Code [www.52css.com] <p>姓?名:?<input?type="text"?id="name"?name="name"?/></p>
須寫成:
<p><label?for="name">姓?名:?</label><input?type="text"?id="name"?/></p>


  12.?能以背景形式呈現(xiàn)的圖片,?盡量寫入css樣式中;
  13.?重要圖片必須加上alt屬性;?給重要的元素和截?cái)嗟脑丶由蟭itle;
  14.?給區(qū)塊代碼及重要功能(比如循環(huán))加上注釋,?方便后臺(tái)添加功能;
  15.?特殊符號(hào)使用:?盡可能使用代碼替代:?比如?<(<)?&?>(>)?&?空格(?)?&??(?)?等等;
  16.?書寫頁(yè)面過程中,?請(qǐng)考慮向后擴(kuò)展性;
  17.?class?&?id?參見?css書寫規(guī)范.

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

Example Source Code [www.52css.com] 要在2中已建好框架的頁(yè)面代碼<div?id="mainnav"></div>中加入新的div元?素,
按a命名法則:?<div?id="mainnav"><div?class="firstnav">...</div></div>,
樣式寫法:??#mainnav??.firstnav{.......}
按b命名法則:?<div?id="mainnav"><div?class="main_firstnav">...</div></div>,
樣式寫法:??.main_firstnav{.......}


  7.?css屬性書寫順序,?建議遵循:??布局定位屬性-->自身屬性-->文本屬性-->其他屬性.?此條可根據(jù)自身習(xí)慣書寫,?但盡量保證同類屬?性寫在一起.?

Example Source Code [www.52css.com] 屬性列舉:?
布局定位屬性主要包括:?display?&?list-style?&?position(相應(yīng)?的?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.?書寫代碼前,?考慮并提高樣式重復(fù)使用率;
  9.?充分利用html自身屬性及樣式繼承原理減少代碼量,?比如:

Example Source Code [www.52css.com] <ul?class="list"><li>這兒是標(biāo)題列表<span>2010-09-?15</span></ul>
定義
ul.list?li{position:relative}??ul.list?li?span{position:absolute;?right:0}
即可實(shí)現(xiàn)日期居右顯示


  10.?樣式表中中文字體名,?請(qǐng)務(wù)必轉(zhuǎn)碼成unicode碼,?以避免編碼錯(cuò)誤時(shí)亂碼;
  11.?背景圖片請(qǐng)盡可能使用sprite技術(shù),?減小http請(qǐng)求,?考慮到多人協(xié)作開發(fā),?sprite按模塊制作;
  12.?使用table標(biāo)簽時(shí)(盡量避免使用table標(biāo)簽),?請(qǐng)不要用width/?height/cellspacing/cellpadding等table屬性直接定義表現(xiàn),?應(yīng)盡可能的利用table自身私有屬性分離結(jié)構(gòu)與表現(xiàn)?,?如

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文件中我會(huì)初始化表格樣式)


  13.?杜絕使用<meta?http-equiv="X-UA-Compatible"?content="IE=7"?/>?兼容?ie8;
  14.?用png圖片做圖片時(shí),?要求圖片格式為png-8格式,若png-8實(shí)在影響圖片質(zhì)量或其中有半透明效果,?請(qǐng)為ie6單獨(dú)定義背景:

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


  15.?避免兼容性屬性的使用,?比如text-shadow?||?css3的相關(guān)屬性;
  16.?減少使用影響性能的屬性,?比如position:absolute?||?float?;
  17.?必須為大區(qū)塊樣式添加注釋,?小區(qū)塊適量注釋;
  18.?代碼縮進(jìn)與格式:?建議單行書寫,?可根據(jù)自身習(xí)慣,?后期優(yōu)化i會(huì)統(tǒng)一處理;

JavaScript書寫規(guī)范
  1.?文件編碼統(tǒng)一為utf-8,?書寫過程過,?每行代碼結(jié)束必須有分號(hào);?原則上所有功能均根據(jù)XXX項(xiàng)目需求原生開發(fā),?以避免網(wǎng)上down下來的代碼造?成的代碼污染(沉冗代碼?||?與現(xiàn)有代碼沖突?||?...);
  2.?庫(kù)引入:?原則上僅引入jQuery庫(kù),?若需引入第三方庫(kù),?須與團(tuán)隊(duì)其他人員討論決定;
  3.?變量命名:?駝峰式命名.?原生JavaScript變量要求是純英文字母,?首字母須小寫,?如iTaoLun;

Example Source Code [www.52css.com] jQuery變量要求首字符為'_',?其他與原生JavaScript?規(guī)則相同,?如:?_iTaoLun;
另,?要求變量集中聲明,?避免全局變量.


  4.?類命名:?首字母大寫,?駝峰式命名.?如?ITaoLun;
  5.?函數(shù)命名:?首字母小寫駝峰式命名.?如iTaoLun();
  6.?命名語(yǔ)義化,?盡可能利用英文單詞或其縮寫;
  7.?盡量避免使用存在兼容性及消耗資源的方法或?qū)傩??比如eval()?&?innerText;
  8.?后期優(yōu)化中,?JavaScript非注釋類中文字符須轉(zhuǎn)換成unicode編碼使用,?以避免編碼錯(cuò)誤時(shí)亂碼顯示;
  9.?代碼結(jié)構(gòu)明了,?加適量注釋.?提高函數(shù)重用率;
  10.?注重與html分離,?減小reflow,?注重性能.

圖片規(guī)范
  1.?所有頁(yè)面元素類圖片均放入img文件夾,?測(cè)試用圖片放于img/demoimg文件夾;
  2.?圖片格式僅限于gif?||?png?||?jpg;
  3.?命名全部用小寫英文字母?||?數(shù)字?||?_?的組合,其中不得包含漢字?||?空格?||?特殊字符;盡量用易懂的詞匯,?便于團(tuán)隊(duì)其他成員理?解;?另,?命名分頭尾兩部分,?用下劃線隔開,?比如ad_left01.gif?||?btn_submit.gif;
  4.?在保證視覺效果的情況下選擇最小的圖片格式與圖片質(zhì)量,?以減少加載時(shí)間;
  5.?盡量避免使用半透明的png圖片(若使用,?請(qǐng)參考css規(guī)范相關(guān)說明);
  6.?運(yùn)用css?sprite技術(shù)集中小的背景圖或圖標(biāo),?減小頁(yè)面http請(qǐng)求,?但注意,?請(qǐng)務(wù)必在對(duì)應(yīng)的sprite?psd源圖中劃參考線,?并保存至img目錄?下.

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

開發(fā)及測(cè)試工具約定
  建議使用Aptana?||?Dw?||?Vim?,?亦可根據(jù)自己喜好選擇,?但須遵循如下原則:
  1.?不可利用IDE的視圖模式'畫'代碼;
  2.?不可利用IDE生成相關(guān)功能代碼,?比如Dw內(nèi)置的一些功能js;
  3.?編碼必須格式化,?比如縮進(jìn);
  測(cè)試工具:?前期開發(fā)僅測(cè)試FireFox?&?IE6?&?IE7?&?IE8?,?后期優(yōu)化時(shí)加入Opera?&?Chrome?&?Safari;
  建議測(cè)試順序:?FireFox-->IE7-->IE8-->IE6-->Opera-->Chrome-->Safari,?建議安裝firebug及IE?Tab?Plus插件.

其他規(guī)范
  1.?開發(fā)過程中嚴(yán)格按分工完成頁(yè)面,?以提高css復(fù)用率,?避免重復(fù)開發(fā);
  2.?減小沉冗代碼,?書寫所有人都可以看的懂的代碼.?簡(jiǎn)潔易懂是一種美德.?為用戶著想,?為服務(wù)器著想.

轉(zhuǎn)載于:https://www.cnblogs.com/fangxiandi/archive/2012/07/29/2614362.html

總結(jié)

以上是生活随笔為你收集整理的开发备必:WEB前端开发规范文档的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。