一、規(guī)范目的1.1 二、文件規(guī)范2.1 文件命名規(guī)則 2.2 文件存放位置 2.3 css 書寫規(guī) 2.4 html書寫規(guī)范 2.5 JavaScript書寫規(guī)范 2.6 圖片規(guī)范 2.7 注釋規(guī)范 2.8 css 瀏覽器兼容 一、規(guī)范目的 1.1 概述 為提高團隊協(xié)作效率, 便于后臺人員添加功能及前端后期優(yōu)化維護, 輸出高質(zhì)量的文檔, 特制訂此文檔. 本規(guī)范文檔一經(jīng)確認, 前端開發(fā)人員必須按本文檔規(guī)范進行前臺頁面開發(fā). 本文檔如有不對或者不合適的地方請及時提出, 經(jīng)討論決定后可以更改此文檔. 二、文件規(guī)范 2.1 文件命名規(guī)則 文件名稱統(tǒng)一用小寫的英文字母、數(shù)字和下劃線的組合,其中不得包含漢字、空格和特殊字符;命名原則的指導思想一是使得你自己和工作組的每一個成員能夠方便的理解每一個文件的意義,二是當我們在文件夾中使用“按名稱排例”的命令時,同一種大類的文件能夠排列在一起,以便我們查找、修改、替換、計算負載量等等操作。 a. HTML的命名原則引文件統(tǒng)一使用index.htm index.html index.asp文件名(小寫)各子頁命名的原則首先應該以欄目名的英語翻譯取單一單詞為名稱。例如: 關于我們 \ aboutus 信息反饋 \ feedback 產(chǎn) 品 \ product 如果欄目名稱多而復雜并不好以英文單詞命名,則統(tǒng)一使用該欄目名稱拼音或拼音的首字母表示;每一個目錄中應該包含一個缺省的html 文件,文件名統(tǒng)一用index.htm index.html index.asp;b. 圖片的命名原則 圖片的名稱分為頭尾兩部分,用下劃線隔開,頭部分表示此圖片的大類性質(zhì)例如:廣告、標志、菜單、按鈕等等。放置在頁面頂部的廣告、裝飾圖案等長方形的圖片取名: banner標志性的圖片取名為: logo在頁面上位置不固定并且?guī)в墟溄拥男D片我們?nèi)∶麨?button 在頁面上某一個位置連續(xù)出現(xiàn),性質(zhì)相同的鏈接欄目的圖片我們?nèi)∶?menu 裝飾用的照片我們?nèi)∶?pic不帶鏈接表示標題的圖片我們?nèi)∶?title 范例:banner_sohu.gif banner_sina.gif menu_aboutus.gif menu_job.gif title_news.gif logo_police.gif logo_national.gif pic_people.jpg鼠標感應效果圖片命名規(guī)范為"圖片名+_+on/off"。例如:menu1_on.gif menu1_off.gifc. javascript的命名原則例如:廣告條的javascript文件名為 ad.js 彈出窗口的javascript文件名為 pop.jsd. 動態(tài)語言文件命名原則以性質(zhì)_描述,描述可以有多個單詞,用“_”隔開,性質(zhì)一般是該頁面得概要。范例:register_form.asp register_post.asp topic_lock.asp 2.2 文件存放位置規(guī)范 _Root cn 存放中文HTML文件 en 存放英文HTML文件 flash 存放Flash文件 images 存放圖片文件 imagestudio 存放PSD源文件 flashstudio 存放flash源文件 inc 存放include文件 library 存放DW庫文件 media 存放多媒體文件 project 存放工程項目資料 temp 存放客戶原始資料 js 存放JavaScript腳本 css 存放CSS文件 2.3 CSS 書寫規(guī)范 基本原則: CSS樣式可細分為3類:自定義樣式、重新定義HTML樣式、鏈接狀態(tài)樣式。 1. 樣式為設計師自定義的新 CSS 樣式,影響被使用本樣式的區(qū)域,用于完成網(wǎng)頁中局部的樣式設定。樣式名 “.”+“相應樣式效果描述的單詞或縮寫”例:“ .shadow ”文字樣式樣式名“.no”+“字號”+“行距”+“顏色縮寫”例:“ .no12 ” 、“ .no12-24 ” 2. 義HTML樣式為設計師重新定義已有的HTML標簽樣式,影響全部的被設定標簽樣式,用于統(tǒng)一網(wǎng)頁中某一標簽的樣式定義。樣式名“HTML標簽”例:hr { border: 1px dotted #333333 } 3. 態(tài)樣式為設計師對鏈接不同狀態(tài)設定特殊樣式,影響被使用本樣式區(qū)域中的鏈接。該樣式寫法有2種: a.nav:link nav.a:link 第一種只能修飾<a>標簽中;第二種可以修飾所有包含有<a>標簽的其他標簽。 頁面內(nèi)的樣式加載必須用鏈接方式<link rel="stylesheet" type="text/css" href="style/style.css"> 注意細則: 1. 協(xié)作開發(fā)及分工: i會根據(jù)各個模塊, 同時根據(jù)頁面相似程序, 事先寫好大體框架文件, 分配給前端人員實現(xiàn)內(nèi)部結(jié)構(gòu)&表現(xiàn)&行為; 共用css文件base.css由i書寫, 協(xié)作開發(fā)過程中, 每個頁面請務必都要引入, 此文件包含reset及頭部底部樣式, 此文件不可隨意修改; 2. class與id的使用: id是唯一的并是父級的, class是可以重復的并是子級的, 所以id僅使用在大的模塊上, class可用在重復使用率高及子級中; id原則上都是由我分發(fā)框架文件時命名的, 為JavaScript預留鉤子的除外; 3. 為JavaScript預留鉤子的命名, 請以 js_ 起始, 比如: js_hide, js_show; 4. class與id命名: 大的框架命名比如header/footer/wrapper/left/right之類的在2中由i統(tǒng)一命名.其他樣式名稱由 小寫英文 & 數(shù)字 & _ 來組合命名, 如i_comment, fontred, width200; 避免使用中文拼音, 盡量使用簡易的單詞組合; 總之, 命名要語義化, 簡明化. 5. 規(guī)避class與id命名(此條重要, 若有不明白請及時與i溝通): a, 通過從屬寫法規(guī)避, 示例見d; b, 取父級元素id/class命名部分命名, 示例見d; c, 重復使用率高的命名, 請以自己代號加下劃線起始, 比如i_clear; d, a,b兩條, 適用于在2中已建好框架的頁面, 如, 要在2中已建好框架的頁面代碼<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{.......} 6. css屬性書寫順序, 建議遵循 布局定位屬性-->自身屬性-->文本屬性-->其他屬性. 此條可根據(jù)自身習慣書寫, 但盡量保證同類屬性寫在一起. 屬性列舉: 布局定位屬性主要包括: margin、padding、float(包括clear)、position(相應的 top,right,bottom,left)、display、visibility、overflow等;自身屬性主要包括: width & height & background & border; 文本屬性主要包括:font、color、text-align、text-decoration、text-indent等;其他屬性包括: list-style(列表樣式)、vertical-vlign、cursor、z-index(層疊順序) 、zoom等.我所列出的這些屬性只是最常用到的, 并不代表全部; 7. 書寫代碼前, 考慮并提高樣式重復使用率; 8. 充分利用html自身屬性及樣式繼承原理減少代碼量, 比如: <ul class="list"><li>這兒是標題列表<span>2010-09-15</span></ul> 定義ul.list li{position:relative} ul.list li span{position:absolute; right:0} 即可實現(xiàn)日期居右顯示 9. 樣式表中中文字體名, 請務必轉(zhuǎn)碼成unicode碼, 以避免編碼錯誤時亂碼; 10. 景圖片請盡可能使用sprite技術(shù), 減小http請求, 考慮到多人協(xié)作開發(fā), sprite按模塊制作; 11. 使用table標簽時(盡量避免使用table標簽), 請不要用width/ height/cellspacing/cellpadding等table屬性直接定義表現(xiàn), 應盡可能的利用table自身私有屬性分離結(jié)構(gòu)與表現(xiàn), 如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文件中我會初始化表格樣式) 12. 杜絕使用<meta http-equiv="X-UA-Compatible" content="IE=7" /> 兼容ie8; 13. 用png圖片做圖片時, 要求圖片格式為png-8格式,若png-8實在影響圖片質(zhì)量或其中有半透明效果, 請為ie6單獨定義背景: background:none;_filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=crop, src=’img/bg.png’); 14. 避免兼容性屬性的使用, 比如text-shadow || css3的相關屬性; 15. 減少使用影響性能的屬性, 比如position:absolute || float ; 16. 必須為大區(qū)塊樣式添加注釋, 小區(qū)塊適量注釋; 17. 代碼縮進與格式: 建議單行書寫, 可根據(jù)自身習慣, 后期優(yōu)化i會統(tǒng)一處理; 命名規(guī)則: 頭:header 內(nèi)容:content/container 尾:footer 導航:nav 側(cè)欄:sidebar 欄目:column 頁面外圍控制整體布局寬度:wrapper 左右中:left right center 登錄條:loginbar 標志:logo 廣告:banner 頁面主體:main 熱點:hot 新聞:news 下載:download 子導航:subnav 菜單:menu 子菜單:submenu 搜索:search 友情鏈接:friendlink 頁腳:footer 版權(quán):copyright 滾動:scroll 內(nèi)容:content 標簽頁:tab 文章列表:list 提示信息:msg 小技巧:tips 欄目標題:title 加入:joinus 指南:guild 服務:service 注冊:regsiter 狀態(tài):status 投票:vote 合作伙伴:partner (二)注釋的寫法: 內(nèi)容區(qū) (三)id的命名: (1)頁面結(jié)構(gòu) 容器: container 頁頭:header 內(nèi)容:content/container 頁面主體:main 頁尾:footer 導航:nav 側(cè)欄:sidebar 欄目:column 頁面外圍控制整體布局寬度:wrapper 左右中:left right center (2)導航 導航:nav 主導航:mainbav 子導航:subnav 頂導航:topnav 邊導航:sidebar 左導航:leftsidebar 右導航:rightsidebar 菜單:menu 子菜單:submenu 標題: title 摘要: summary (3)功能 標志:logo 廣告:banner 登陸:login 登錄條:loginbar 注冊:regsiter 搜索:search 功能區(qū):shop 標題:title 加入:joinus 狀態(tài):status 按鈕:btn 滾動:scroll 標簽頁:tab 文章列表:list 提示信息:msg 當前的: current 小技巧:tips 圖標: icon 注釋:note 指南:guild 服務:service 熱點:hot 新聞:news 下載:download 投票:vote 合作伙伴:partner 友情鏈接:link 版權(quán):copyright\ 基本樣式: body {margin:0; padding:0; font:12px "\5B8B\4F53",san-serif;background:#fff;} div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,blockquote,p{padding:0; margin:0;} table,td,tr,th{font-size:12px;} li{list-style-type:none;} img{vertical-align:top;border:0;} ol,ul {list-style:none;} h1,h2,h3,h4,h5,h6 {font-size:12px; font-weight:normal;} address,cite,code,em,th {font-weight:normal; font-style:normal;} .fB{font-weight:bold;} .f12px{font-size:12px;} .f14px{font-size:14px;} .left{float:left;} .right{float:right;} a {color:#2b2b2b; text-decoration:none;} a:visited {text-decoration:none;} a:hover {color:#ba2636;text-decoration:underline;} a:active {color:#ba2636;} 重定義的最先,偽類其次,自定義最后,便于自己和他人閱讀! 不同瀏覽器上字號保持一致,字號建議用點數(shù)pt和像素px來定義,pt一般使用中文宋體的9pt 和11pt,px一般使用中文宋體12px 和14.7px 這是經(jīng)過優(yōu)化的字號,黑體字或者宋體字加粗時,一般選用11pt 和14.7px 的字號比較合適。中英文混排時,我們盡可能的將英文和數(shù)字定義為verdana 和arial 兩種字體。 2.4 html 書寫規(guī)范 網(wǎng)頁制作細節(jié) ---- head區(qū)代碼規(guī)范 head區(qū)是指HTML代碼的<head>和</head>之間的內(nèi)容。 必須加入的標簽 公司版權(quán)注釋 <!--- The site is designed by EHM,Inc 07/2005 ---> 網(wǎng)頁顯示字符集 簡體中文:<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=gb2312"> 繁體中文:<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> 英 語:<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"> 網(wǎng)頁制作者信息 <META name="author" content="webmaster@maketown.com"> 網(wǎng)站簡介 <META NAME="DESCRIPTION" CONTENT="xxxxxxxxxxxxxxxxxxxxxxxxxx"> 搜索關鍵字 <META NAME="keywords" CONTENT="xxxx,xxxx,xxx,xxxxx,xxxx,"> 網(wǎng)頁的css規(guī)范 <LINK href="../css/style.css" rel="stylesheet" type="text/css"> 網(wǎng)頁標題 <title>xxxxxxxxxxxxxxxxxx</title> 可以選擇加入的標簽 設定網(wǎng)頁的到期時間。一旦網(wǎng)頁過期,必須到服務器上重新調(diào)閱。 <META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT"> 禁止瀏覽器從本地機的緩存中調(diào)閱頁面內(nèi)容。 <META HTTP-EQUIV="Pragma" CONTENT="no-cache"> 用來防止別人在框架里調(diào)用你的頁面。 <META HTTP-EQUIV="Window-target" CONTENT="_top"> 自動跳轉(zhuǎn)。 <META HTTP-EQUIV="Refresh" CONTENT="5;URL=http://www.yahoo.com"> 5指時間停留5秒 網(wǎng)頁搜索機器人向?qū)?。用來告訴搜索機器人哪些頁面需要索引,哪些頁面不需要索引。 <META NAME="robots" CONTENT="none"> CONTENT的參數(shù)有all,none,index,noindex,follow,nofollow。默認是all。 收藏夾圖標 <link rel = "Shortcut Icon" href="favicon.ico"> 所有的javascript的調(diào)用盡量采取外部調(diào)用. <SCRIPT LANGUAGE="JavaScript" SRC="script/xxxxx.js"></SCRIPT> 附<body>標簽: <body>標簽不屬于head區(qū),這里強調(diào)一下,為了保證瀏覽器的兼容性,必須設置頁面背景<body bgcolor="#FFFFFF"> 網(wǎng)頁制作細節(jié) ---- 字體1. 在設定字體樣式時對于文字字號樣式和行間距應必須使用CSS樣式表。禁止在頁面中出現(xiàn) <font size=?> 標記。2.在網(wǎng)頁中中文應首選使用宋體。英文和數(shù)字首選使用verdana 和arial 兩種字體。一般使用中文宋體的9pt 和11pt 或12px 和14.7px 這是經(jīng)過優(yōu)化的字號,黑體字或者宋體字加粗時,一般選用11pt 和14.7px 的字號比較合適。3. 為了最大程度的發(fā)揮瀏覽器自動排版的功能,在一段完整的文字中請盡量不要使用<br> 來人工干預分段。4.不同語種的文字之間應該有一個半角空格,但避頭的符號之前和避尾的符號之后除外,漢字之間的標點要用全角標點,英文字母和數(shù)字周圍的括號應該使用半角括號。 5. 請不要在網(wǎng)頁中連續(xù)出現(xiàn)多于一個的 也盡量少使用全角空格(英文字符集下,全角空格會變成亂碼),空白應該盡量使用 text-indent, padding, margin, hspace, vspace 以及透明的gif 圖片來實現(xiàn)。 6. 行距建議用百分比來定義,常用的兩個行距的值是line-height:120%/150%. 7. 排版中我們經(jīng)常會遇到需要進行首行縮進的處理,不要使用 或者全角空格來達到效果,規(guī)范的做法是在樣式表中定義 p { text-indent: 2em; } 然后給每一段加上 <p> 標記,注意,一般情況下,請不要省略 </p> 結(jié)束標記 。 網(wǎng)頁制作細節(jié) ---- 鏈接1. 網(wǎng)站中的鏈接路徑全部采用相對路徑,一般鏈接到某一目錄下的缺省文件的鏈接路徑不必寫全名,如我們不必這樣:<a href=”aboutus/index.htm”> 而應該這樣:<a href=”aboutus/”>,所有內(nèi)頁指向首頁的鏈接寫成<a href=”/”>2. 在瀏覽器里,當我們點擊空鏈接時,它會自動將當前頁面重置到首端,從而影響用戶正常的閱讀內(nèi)容,我們用代碼“javascript:void(null)”代替原來的“#”標記 網(wǎng)頁制作細節(jié) ---- 表格1px表格 style="border-collapse: collapse"實例如下:<table border="1" cellspacing="0" width="32" height="32" style="border-collapse: collapse"bordercolor="#000000" cellpadding="0"> <tr> <td></td></tr></table>設置亮、暗邊框顏色表格有亮邊框(bordercolorlight)和暗邊框(bordercolordark)兩個屬性可以對表格樣式設置。<table border="1" width="500" bordercolorlight="#000000" bordercolordark="#FFFFFF">在寫 <table> 互相嵌套時,嚴格按照的規(guī)范,對于單獨的一個<table>來說,<table><tr>對齊,<td> 縮進兩個半角空格,<td> 中如果還有嵌套的表格,<table>也縮進兩個半角空格,如果<td>中沒有任何嵌套的表格,</td> 結(jié)束標記應該與 <td> 處于同一行,不要換行,如我們注意在源代碼中不應有這樣的代碼:<td><img src=”../images/sample.gif”> </td>而應該是這樣的:<td><img src=”../images/sample.gif”></td>這是因為瀏覽器認為換行相當于一個半角空格,以上不規(guī)范的寫法相當于無意中增加一個半角空格,如果確實有必要增加一個半角空格,也應該這樣寫: <td><img src=”../images/sample.gif”> </td>一個網(wǎng)頁要盡量避免用整個一張大表格,所有的內(nèi)容都嵌套在這個大表格之內(nèi),因為瀏覽器在解釋頁面的元素時,是以表格為單位逐一顯示,如果一張網(wǎng)頁是嵌套在一個大表格之內(nèi),那么很可能造成的后果就是,當瀏覽者敲入網(wǎng)址,他要先面對一片空白很長時間,然后所有的網(wǎng)頁內(nèi)容同時出現(xiàn)。如果必須這樣做,請使用 <tbody>標記,以便能夠使這個大表格分塊顯示 網(wǎng)頁制作細節(jié) ---- 下載速度首頁Flash 網(wǎng)頁大小應限定在 200K 以下,盡可能的使用矢量圖形和Action來減小動畫大小。非首頁靜態(tài)頁面含圖片大小應限定在 70K 左右,盡可能的使用背景顏色替換大塊同色圖片。 網(wǎng)頁制作細節(jié) ---- includeasp標準寫法 <!--#include file="inc/index_top.asp" -->jsp 標準寫法 <%@ include file="../inc/index_top..jsp" %> 網(wǎng)頁制作細節(jié) ---- Alt和Title 都是提示性語言標簽,請注意它們之間的區(qū)別。 在我們?yōu)g覽網(wǎng)頁時,當鼠標停留在圖片對象或文字鏈接上時,在鼠標的右下角有時會出現(xiàn)一個提示信息框。對目標進行一定的注釋說明。在一些場合,它的作用是很重要的。 alt 用來給圖片來提示的。Title用來給鏈接文字或普通文字提示的。 用法如下: <p Title="給鏈接文字提示">文字</p> <a href="#" Title="給鏈接文字提示">文字</a> <img src="圖片.gif" alt="給圖片提示"> 網(wǎng)頁制作細節(jié) ---- 緩存 網(wǎng)頁不會被緩存 HTM網(wǎng)頁 <META HTTP-EQUIV="pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"> <META HTTP-EQUIV="expires" CONTENT="0"> ASP網(wǎng)頁 Response.Expires = -1 Response.ExpiresAbsolute = Now() - 1 Response.cachecontrol = "no-cache" 網(wǎng)頁制作細節(jié) ---- 瀏覽器兼容性創(chuàng)建站點時,應該明白訪問者可能使用各種 Web 瀏覽器。在已知的其他設計限制下,盡可能將站點設計為具有最大的瀏覽器兼容性。目前使用的 Web 瀏覽器有二十多種,大多數(shù)已發(fā)行了多個版本。即使您只針對使用 Netscape Navigator 和 Microsoft Internet Explorer 的大多數(shù) Web 用戶,但您應明確并不是每個人都在使用這兩種瀏覽器的最新版本。您的站點越復雜(在布局、動畫、多媒體內(nèi)容和交互方面),跨瀏覽器兼容的可能性就越小。例如,并非所有的瀏覽器都可以運行JavaScript。不使用特殊字符的純文本頁面或許能夠在任何瀏覽器中正確顯示,但比起有效地使用圖形、布局和交互的頁面,這樣的頁面在美感上可能要差得多。所以,應盡量在最佳效果設計和最大瀏覽器兼容性設計之間取得平衡。所有的HTML 標簽的屬性都要用單引號或者雙引號括起,即我們應該寫 <a href=”url”> 而不 是 <a href=url>. 圖片處理細節(jié) ---- banner全尺寸banner為468X60px,半尺寸banner為234X60px,小banner為88X31px。另外120X90,120X60也是小圖標的標準尺寸。全尺寸banner不超過14K。普遍的banner尺寸760X100,750X120,468X60,468X95,728X90,585X140次級頁的pip尺寸360X300,336X280游標:100X100或120X120 圖片處理細節(jié) ---- LOGO的國際標準規(guī)范為了便于INTERNET上信息的傳播,一個統(tǒng)一的國際標準是需要的。實際上已經(jīng)有了這樣的一整套標準。其中關于網(wǎng)站的LOGO,目前有三種規(guī)格:88*31 這是互聯(lián)網(wǎng)上最普遍的LOGO規(guī)格。120*60 這種規(guī)格用于一般大小的LOGO。120*90 這種規(guī)格用于大型LOGO。 圖片處理細節(jié) ---- 頁面修飾圖片處理圖片經(jīng)過優(yōu)化以加快下載的速度,有較佳的視覺空間效果,用圖要與頁面風格、頁面內(nèi)容相符;制作精美,細節(jié)處理得當。 2.5 JavaScript書寫規(guī)范 1. 書寫過程中, 每行代碼結(jié)束必須有分號; 原則上所有功能均根據(jù)XXX項目需求原生開發(fā), 以避免網(wǎng)上down下來的代碼造成的代碼污染(沉冗代碼 || 與現(xiàn)有代碼沖突 || ...); 2. 庫引入: 原則上僅引入jQuery庫, 若需引入第三方庫, 須與團隊其他人員討論決定; 3. 變量命名: 駝峰式命名. 原生JavaScript變量要求是純英文字母, 首字母須小寫, 如iTaoLun; jQuery變量要求首字符為'_', 其他與原生JavaScript 規(guī)則相同, 如: _iTaoLun; 另, 要求變量集中聲明, 避免全局變量. 4. 類命名: 首字母大寫, 駝峰式命名. 如 ITaoLun; 5. 函數(shù)命名: 首字母小寫駝峰式命名. 如iTaoLun(); 6. 命名語義化, 盡可能利用英文單詞或其縮寫; 7. 盡量避免使用存在兼容性及消耗資源的方法或?qū)傩? 比如eval() & innerText; 8. 后期優(yōu)化中, JavaScript非注釋類中文字符須轉(zhuǎn)換成unicode編碼使用, 以避免編碼錯誤時亂碼顯示; 9. 代碼結(jié)構(gòu)明了, 加適量注釋. 提高函數(shù)重用率; 10. 注重與html分離, 減小reflow, 注重性能. 2.6 圖片規(guī)范 1. 所有頁面元素類圖片均放入img文件夾, 測試用圖片放于img/demoimg文件夾; 2. 圖片格式僅限于gif || png || jpg; 3. 命名全部用小寫英文字母 || 數(shù)字 || _ 的組合,其中不得包含漢字 || 空格 || 特殊字符;盡量用易懂的詞匯, 便于團隊其他成員理解; 另, 命名分頭尾兩部分, 用下劃線隔開, 比如ad_left01.gif || btn_submit.gif; 4. 在保證視覺效果的情況下選擇最小的圖片格式與圖片質(zhì)量, 以減少加載時間; 5. 盡量避免使用半透明的png圖片(若使用, 請參考css規(guī)范相關說明); 6. 運用css sprite技術(shù)集中小的背景圖或圖標, 減小頁面http請求, 但注意, 請務必在對應的sprite psd源圖中劃參考線, 并保存至img目錄下. 2.7 注釋規(guī)范 1. html注釋: 注釋格式 <!--這兒是注釋-->, '--'只能在注釋的始末位置,不可置入注釋文字區(qū)域; 2. css注釋: 注釋格式 ; 3. JavaScript注釋, 單行注釋使用'//這兒是單行注釋' ,多行注釋使用 ; 2.8 瀏覽器兼容性 CSS hack 一、標識區(qū)別:區(qū)別IE6,IE7,IE8,FF。1. IE都能識別* ; 標準瀏覽器(如FF)不能識別*; 2. IE6能識別*,但不能識別 !important; IE6在樣式前面加_ 3. IE7能識別*,也能識別!important; 4. IE8能識別\ 9 例如:background:red \9; 5. firefox不能識別*,但能識別!important; 1.IE6和firefox的區(qū)別:background:orange;*background:blue;意思就是火狐瀏覽器的背景顏色是橙色,而IE瀏覽器的背景色是藍色. 2. IE6和IE7的區(qū)別:background:green !important;background:blue;意思指的是:IE7的背景顏色是綠色,IE6的背景顏色是藍色 3. IE7和FF的區(qū)別:background:orange; *background:green;意思指的是:火狐瀏覽器的背景顏色是橙色,而IE7的背景顏色是綠色 4. FF,IE7,IE6的區(qū)別:background:orange;*background:green !important;*background:blue;意思是火狐瀏覽器的的背景橙色,IE7瀏覽器的背景顏色是綠色,而IE6瀏覽器的顏色是藍色. 二、實踐建議 (1). 開發(fā)平臺的選擇 在 Firefox 上編寫CSS, 同時兼容其他瀏覽器的. 這樣做肯定會比在 IE 做好再到別的瀏覽器兼容來得容易, 因為 IE 對老標準支持還是很不錯的, 而 IE 的一些特有功能人家卻不支持. 所以推薦以 Firefox 結(jié)合 Firebug 擴展作為平臺。 (2). CSS Hack 的順序 使用 Firefox 作為平臺, 只要代碼寫得夠標準, 其實要 Hack 的地方不會很多的, IE 以外的瀏覽器幾乎都不會有問題, 所以可以暫時忽略, 順序如下:Firefox -> IE6 -> IE7 -> 其他 (3). Hack 的方法 說到方法有兩種, 一種是在不同文件中處理, 另一種則是在同一個文件中處理. 其實作用是相同的, 只是出發(fā)點不一樣而已. 1. 同一文件中處理.如: id="bgcolor"的控件要在 IE6中顯示藍色, IE7中顯示綠色, Firefox等其他瀏覽器中顯示紅色。 IE6不認 !important,也不認 *+html.所以 IE6只能是 blue.IE7認 !important,也認 *+html,優(yōu)先度: (*+html + !important) > !important > +html. IE7可以是 red, blue和 green,但 green的優(yōu)先度最高.Firefox和其他瀏覽器都認 !important. !important優(yōu)先, Firefox可以是 red和 blue,但 red優(yōu)先度高.上述的優(yōu)先符號均是 CSS3標準允許的,其他瀏覽器也還有其他的 Hack方法,但我迄今還沒遇到過 Firefox正常, IE以外的其他瀏覽器不正常的情況,所以無可分享.只要代碼規(guī)范,相信這種情況的發(fā)生應該是很罕見 (JavaScript除外). 2. 不同文件中處理.為什么同一文件中可以處理還要寫在多個文件里面針對不同的瀏覽器?這是為了欺騙 W3C的驗證工具,其實只需要兩個文件,一個是針對所有瀏覽器的,一個只為 IE服務.將所有符合 W3C的代碼寫到一個里面去,而一些 IE中必須的,又不能通過 W3C驗證的代碼 (如: cursor:hand;)放到另一個文件中,再用下面的方法導入