Web前端开发规范手册
規范目的
- 為提高團隊協作效率, 便于后臺人員添加功能及前端后期優化維護, 輸出高質量的文檔, 特制訂此文檔。
文件規范
文件命名規則
文件名稱統一用小寫的英文字母、數字和下劃線的組合,其中不得包含漢字、空格和特殊字符;命名原則的指導思想一是使得你自己和工作組的每一個成員能夠方便的理解每一個文件的意義,二是當我們在文件夾中使用“按名稱排例”的命令時,同一種大類的文件能夠排列在一起,以便我們查找、修改、替換、計算負載量等等操作。- HTML的命名原則
主頁統一使用index.htm、index.html或index.asp文件名(小寫)
各子頁命名的原則首先應該以欄目名的英語翻譯取單一單詞為名稱。例如:
如果欄目名稱多而復雜并不好以英文單詞命名,則統一使用該欄目名稱拼音或拼音的首字母表示;
每一個目錄中應該包含一個缺省的html 文件,文件名統一用index.htm、index.html或index.asp;
- 圖片的命名原則
圖片的名稱分為頭尾兩部分,用下劃線隔開,頭部分表示此圖片的大類性質
例如:廣告、標志、菜單、按鈕等等。
放置在頁面頂部的廣告、裝飾圖案等長方形的圖片取名: banner
標志性的圖片取名為: logo
在頁面上位置不固定并且帶有鏈接的小圖片我們取名為 button
在頁面上某一個位置連續出現,性質相同的鏈接欄目的圖片我們取名: menu
裝飾用的照片我們取名: pic
不帶鏈接表示標題的圖片我們取名: title
范例:banner_sohu.png、banner_sina.png、menu_aboutus.png、menu_job.png、title_news.png、logo_police.png、 logo_national.png、pic_people.png
鼠標感應效果圖片命名規范為"圖片名+_+on/off"。
例如:menu1_on.png、menu1_off.png
- javascript的命名原則
例如:廣告條的javascript文件名為 ad.js 彈出窗口的javascript文件名為 pop.js
- 動態語言文件命名原則
以性質_描述,描述可以有多個單詞,用“_”隔開,性質一般是該頁面得概要。
范例:register_form.asp、register_post.asp、topic_lock.asp
文件存放位置規范
//項目目錄(都不是必須存在的目錄)cn 存放中文HTML文件en 存放英文HTML文件flash 存放Flash文件images 存放圖片文件imagestudio 存放PSD源文件flashstudio 存放flash源文件inc 存放include文件library 存放庫文件media 存放多媒體文件project 存放工程項目資料temp 存放客戶原始資料js 存放JavaScript腳本css 存放CSS文件CSS書寫規范
基本原則:
CSS樣式可細分為3類:自定義樣式、重新定義HTML樣式、鏈接狀態樣式。
注意細則:
規避class與id命名(此條重要, 請及時與Me溝通):
a、 通過從屬寫法規避, 示例見d;
b、 取父級元素id/class命名部分命名, 示例見d;
c、 重復使用率高的命名, 請以自己代號加下劃線起始, 比如Me_clear;
d、 a,b兩條, 適用于在 2 中已建好框架的頁面, 如, 要在 2 中已建好框架的頁面代碼<div id="mainnav"></div>中加入新的div元素:
命名規則:
頭:header
內容:content/container
尾:footer
導航:nav
側欄:sidebar
欄目:column
頁面外圍控制整體布局寬度:wrapper
左右中:left right center
登錄條:loginbar
標志:logo
廣告:banner
頁面主體:main
熱點:hot
新聞:news
下載:download
子導航:subnav
菜單:menu
子菜單:submenu
搜索:search
友情鏈接:friendlink
頁腳:footer
版權:copyright
滾動:scroll
內容:content
標簽頁:tab
文章列表:list
提示信息:msg
小技巧:tips
欄目標題:title
加入:joinus
指南:guild
服務:service
注冊:regsiter
狀態:status
投票:vote
合作伙伴:partner
注釋的寫法:
/* Footer */內容區/* End Footer */id的命名:
- 頁面結構
容器: container
頁頭:header
內容:content container
頁面主體:main
頁尾:footer
導航:nav
側欄:sidebar
欄目:column
頁面外圍控制整體布局寬度:wrapper
左右中:left right center - 導航
導航:nav
主導航:mainbav
子導航:subnav
頂導航:topnav
邊導航:sidebar
左導航:leftsidebar
右導航:rightsidebar
菜單:menu
子菜單:submenu
標題: title
摘要: summary - 功能
標志:logo
廣告:banner
登陸:login
登錄條:loginbar
注冊:regsiter
搜索:search
功能區:shop
標題:title
加入:joinus
狀態:status
按鈕:btn
滾動:scroll
標簽頁:tab
文章列表:list
提示信息:msg
當前的: current
小技巧:tips
圖標: icon
注釋:note
指南:guild
服務:service
熱點:hot
新聞:news
下載:download
投票:vote
合作伙伴:partner
友情鏈接:link
版權:copyright
基本樣式:
/* CSS Document */ 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;}//重定義的最先,偽類其次,自定義最后,便于自己和他人閱讀! 中英文混排時,我們盡可能的將英文和數字定義為verdana?和 arial?兩種字體。HTML書寫規范
網頁制作細節
head區代碼規范
head區是指HTML代碼的<head>和</head>之間的內容。必須加入的標簽:
- 公司版權注釋 <!--- The site is designed by xxx 04/2018 --->
-
網頁顯示字符集
簡體中文:<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"> - 網頁制作者信息 <META name="author" content="luozz@cmgos.com">
- 網站簡介 <META NAME="DESCRIPTION" CONTENT="xxxxxxxxxxxxxxxxxxxxxxxxxx">
- 搜索關鍵字 <META NAME="keywords" CONTENT="xxxx,xxxx,xxx,xxxxx,xxxx,">
- 網頁的css規范 <LINK href="xxx/xxx.css" rel="stylesheet" type="text/css">
- 網頁標題 <title>xxxxxxxxxxxxxxxxxx</title>
可以選擇加入的標簽:
- 設定網頁的到期時間。一旦網頁過期,必須到服務器上重新調閱。 <META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">
- 禁止瀏覽器從本地機的緩存中調閱頁面內容。 <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
- 用來防止別人在框架里調用你的頁面。<META HTTP-EQUIV="Window-target" CONTENT="_top">
- 自動跳轉。<META HTTP-EQUIV="Refresh" CONTENT="5;URL=http://www.keyup.top">5指時間停留5秒
- 網頁搜索機器人向導。用來告訴搜索機器人哪些頁面需要索引,哪些頁面不需要索引。<META NAME="robots" CONTENT="none"> CONTENT的參數有all,none,index,noindex,follow,nofollow。默認是all。
- 收藏夾圖標 <link rel = "Shortcut Icon" href="favicon.ico">
- 所有的javascript的調用盡量采取外部調用. <SCRIPT LANGUAGE="JavaScript" SRC="script/xxxxx.js"></SCRIPT>
- 附<body>標簽: <body>標簽不屬于head區,這里強調一下,為了保證瀏覽器的兼容性,必須設置頁面背景<body bgcolor="#FFFFFF">
字體
- 在設定字體樣式時對于文字字號樣式和行間距應必須使用CSS樣式表。禁止在頁面中出現 <font size=?> 標記。
- 在網頁中中文應首選使用宋體。英文和數字首選使用verdana?和arial?兩種字體。一般使用中文宋體的9pt?和11pt 或12px?和14.7px?這是經過優化的字號,黑體字或者宋體字加粗時,一般選用11pt?和14.7px?的字號比較合適。
- 為了最大程度的發揮瀏覽器自動排版的功能,在一段完整的文字中請盡量不要使用<br>來人工干預分段。
- 不同語種的文字之間應該有一個半角空格,但避頭的符號之前和避尾的符號之后除外,漢字之間的標點要用全角標點,英文字母和數字周圍的括號應該使用半角括號。
- 請不要在網頁中連續出現多于一個的空格,也盡量少使用全角空格(英文字符集下,全角空格會變成亂碼),空白應該盡量使用text-indent, padding, margin, hspace, vspace 以及透明的gif圖片來實現。
- 行距建議用百分比來定義,常用的兩個行距的值是line-height:120% line-height:150%。
- 排版中我們經常會遇到需要進行首行縮進的處理,不要使用空格或者全角空格來達到效果,規范的做法是在樣式表中定義 p { text-indent: 2em; } 然后給每一段加上 <p> 標記,注意,一般情況下,請不要省略 </p> 結束標記 。
鏈接
- 網站中的鏈接路徑全部采用相對路徑,一般鏈接到某一目錄下的缺省文件的鏈接路徑不必寫全名,如我們不必這樣:<a href=”aboutus/index.htm”> 而應該這樣:<a href=”aboutus/”>,所有內頁指向首頁的鏈接寫成<a href=”/”>
- 在瀏覽器里,當我們點擊空鏈接時,它會自動將當前頁面重置到首端,從而影響用戶正常的閱讀內容,我們用代碼javascript:void(null)代替原來的“#”標記
表格
1px表格style="border-collapse: collapse"
實例如下:
設置亮、暗邊框顏色
表格有亮邊框(bordercolorlight)和暗邊框(bordercolordark)兩個屬性可以對表格樣式設置。
在寫 <table> 互相嵌套時,嚴格按照的規范,對于單獨的一個<table>來說,<table><tr>對齊,<td> 縮進兩個半角空格,<td> 中如果還有嵌套的表格,<table>也縮進兩個半角空格,如果<td>中沒有任何嵌套的表格,</td> 結束標記應該與 <td> 處于同一行,不要換行,
如我們注意在源代碼中不應有這樣的代碼:
而應該是這樣的:
<td><img src=”../images/sample.gif”></td>這是因為瀏覽器認為換行相當于一個半角空格,以上不規范的寫法相當于無意中增加一個半角空格,如果確實有必要增加一個半角空格,也應該這樣寫:
<td><img src=”../images/sample.gif”> </td>一個網頁要盡量避免用整個一張大表格,所有的內容都嵌套在這個大表格之內,因為瀏覽器在解釋頁面的元素時,是以表格為單位逐一顯示,如果一張網頁是嵌套在一個大表格之內,那么很可能造成的后果就是,當瀏覽者敲入網址,他要先面對一片空白很長時間,然后所有的網頁內容同時出現。如果必須這樣做,請使用 <tbody>標記,以便能夠使這個大表格分塊顯示
下載速度
首頁Flash 網頁大小應限定在 200K以下,盡可能的使用矢量圖形和Action來減小動畫大小。非首頁靜態頁面含圖片大小應限定在70K左右,盡可能的使用背景顏色替換大塊同色圖片。include
asp標準寫法 <!--#include file="inc/index_top.asp" -->
jsp標準寫法 <%@ include file="../inc/index_top.jsp" %>
Alt和Title
都是提示性語言標簽,請注意它們之間的區別。
在我們瀏覽網頁時,當鼠標停留在圖片對象或文字鏈接上時,在鼠標的右下角有時會出現一個提示信息框。對目標進行一定的注釋說明。在一些場合,它的作用是很重要的。
alt用來給圖片來提示的。title用來給鏈接文字或普通文字提示的。
用法如下:
緩存
HTM網頁
<META HTTP-EQUIV="pragma" CONTENT="no-cache"> <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate"> <META HTTP-EQUIV="expires" CONTENT="0">ASP網頁
Response.Expires = -1 Response.ExpiresAbsolute = Now() - 1 Response.cachecontrol = "no-cache"瀏覽器兼容性
創建站點時,應該明白訪問者可能使用各種 Web 瀏覽器。在已知的其他設計限制下,盡可能將站點設計為具有最大的瀏覽器兼容性。目前使用的 Web 瀏覽器有二十多種,大多數已發行了多個版本。即使您只針對使用 Netscape Navigator 和 Microsoft Internet Explorer 的大多數 Web 用戶,但您應明確并不是每個人都在使用這兩種瀏覽器的最新版本。
您的站點越復雜(在布局、動畫、多媒體內容和交互方面),跨瀏覽器兼容的可能性就越小。例如,并非所有的瀏覽器都可以運行JavaScript。不使用特殊字符的純文本頁面或許能夠在任何瀏覽器中正確顯示,但比起有效地使用圖形、布局和交互的頁面,這樣的頁面在美感上可能要差得多。所以,應盡量在最佳效果設計和最大瀏覽器兼容性設計之間取得平衡。
所有的HTML 標簽的屬性都要用單引號或者雙引號括起,即我們應該寫<a href=”url”> 而不是 <a href=url>.
banner
全尺寸banner為468X60px,半尺寸banner為234X60px,小banner為88X31px。另外120X90,120X60也是小圖標的標準尺寸。全尺寸banner不超過14K。
普遍的banner尺寸760X100,750X120,468X60,468X95,728X90,585X140
次級頁的pip尺寸360X300,336X280
游標:100X100或120X120
LOGO的國際標準規范
為了便于INTERNET上信息的傳播,一個統一的國際標準是需要的。實際上已經有了這樣的一整套標準。其中關于網站的LOGO,目前有三種規格:88*31 這是互聯網上最普遍的LOGO規格。
120*60 這種規格用于一般大小的LOGO。
120*90 這種規格用于大型LOGO。
頁面修飾圖片處理
圖片經過優化以加快下載的速度,有較佳的視覺空間效果,用圖要與頁面風格、頁面內容相符;制作精美,細節處理得當。JavaScript書寫規范
圖片規范
注釋規范
瀏覽器兼容性 CSS hack
一、標識區別:
區別IE6,IE7,IE8,FF。
background:orange;*background:blue;
意思就是火狐瀏覽器的背景顏色是橙色,而IE瀏覽器的背景色是藍色. 2.IE6和IE7的區別:
background:green !important;background:blue;
意思指的是:IE7的背景顏色是綠色,IE6的背景顏色是藍色
3.IE7和FF的區別:
background:orange; *background:green;
意思指的是:火狐瀏覽器的背景顏色是橙色,而IE7的背景顏色是綠色
4.FF,IE7,IE6的區別:
background:orange;*background:green !important;*background:blue;
意思是火狐瀏覽器的的背景橙色,IE7瀏覽器的背景顏色是綠色,而IE6瀏覽器的顏色是藍色.
個人主頁: https://www.keyup.top
總結
以上是生活随笔為你收集整理的Web前端开发规范手册的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dict字典方法
- 下一篇: 2017年html5行业报告,云适配发布