隔壁人妻偷人bd中字_特黄特黄一级片_国产午夜大地久久_污色网站在线观看_a天堂资源在线观看_精品日韩久久久_欧美日韩福利在线_欧美日韩一区二区在线免费观看_欧美大尺度做爰床戏_国产情侣av自拍

訂閱本欄目 RSS您所在的位置: 深山工作室 > DIV+CSS > 正文

網(wǎng)頁制作,改變你的思維方

網(wǎng)絡(luò) 2008/4/22 22:37:05 深山行者 字體: 瀏覽 6733

“重構(gòu)”的春風(fēng)吹遍大江南北,互聯(lián)網(wǎng)一時(shí)間風(fēng)聲鶴唳,“div+CSS”儼然已成為一種“時(shí)尚”,難以盡數(shù)的網(wǎng)站都不約而同地開始了自己的“重構(gòu)”。然而打開這形形色色網(wǎng)站的源代碼,卻時(shí)常令人啞然失笑——

我們看到有嵌套6、7層的div布局,有不用table的表格,有純div+a構(gòu)成的頁面,有成百上千的表現(xiàn)層class……現(xiàn)在關(guān)于標(biāo)準(zhǔn)的書籍越來越多,除了少數(shù)幾本標(biāo)榜“高級(jí)技巧”的書籍以外,很少有人不會(huì)在自己著作的前幾章強(qiáng)調(diào)這樣一句話——“結(jié)構(gòu)與表現(xiàn)分離”。然而這些書籍的讀者們,又有多少人認(rèn)認(rèn)真真地讀過前幾章呢?還是更多地直接跳過那些乏味的結(jié)構(gòu)講解,一頭扎到貌似高深的布局技巧與Hack中去?

其實(shí)div+CSS這個(gè)說法從一開始就誤導(dǎo)了太多的人,急功近利的心態(tài)則更是造成這種現(xiàn)象的罪魁禍?zhǔn)住R粋€(gè)習(xí)慣了table布局的網(wǎng)頁制作接觸標(biāo)準(zhǔn)的第一步,不應(yīng)該是去盲目尋求實(shí)現(xiàn)各種布局的CSS技巧,而是努力改變自己的思維方式。

下面將結(jié)合我的切身體會(huì)談一談順應(yīng)標(biāo)準(zhǔn)的思維方式,其中有不少是我曾經(jīng)走過的彎路,希望對(duì)剛剛接觸標(biāo)準(zhǔn)的XDJM們有些幫助:

1、“節(jié)省代碼”是營(yíng)銷手段,不是宗旨

“使用div布局可以比table布局節(jié)省更多的代碼”,我在很多書籍和網(wǎng)站上見到過這句話。這句話本身是沒錯(cuò)的,可以“節(jié)省代碼”的確是網(wǎng)頁標(biāo)準(zhǔn)化所帶來的好處之一。然而切記,它只是“好處之一”,而不是“唯一好處”,更不是宗旨。“節(jié)省代碼”更多的時(shí)候是我們用來說服那些頑固不化的老板的營(yíng)銷手段。網(wǎng)頁標(biāo)準(zhǔn)化的唯一宗旨是“結(jié)構(gòu)與表現(xiàn)分離”,而絕不是為了節(jié)省代碼而節(jié)省代碼。我曾經(jīng)因?yàn)榫W(wǎng)站邊欄甚至主體內(nèi)容的表現(xiàn)形式相同而采用了統(tǒng)一的class (至今還有一些書是這樣教的),這樣的確比分別命名id更節(jié)省代碼,然而這樣做的代價(jià)是代碼失去了良好的結(jié)構(gòu)。失去良好結(jié)構(gòu)的后果是:一、源代碼沒有了可讀性;二、網(wǎng)站增加了未知的維護(hù)成本。試想,當(dāng)某一塊內(nèi)容因?yàn)樾枰鞒霰憩F(xiàn)形式的變動(dòng),例如鏈接的顏色等等,我們就不得不去修改頁面源文件,增加額外的class,工作量比起只需要調(diào)整id分組就大了許多。而且長(zhǎng)此以往,結(jié)構(gòu)將會(huì)越來越差,形成難以逆轉(zhuǎn)的惡性循環(huán)。

還有一種情況,出現(xiàn)在id的命名方面,也是本人曾經(jīng)犯過的錯(cuò)誤。那時(shí)為了“節(jié)省代碼”,而把主菜單命名為“mm”,二級(jí)菜單命名為“m2”,三級(jí)菜單為“m3”,結(jié)果嚴(yán)重降低了網(wǎng)頁的可讀性,使其他同事很難接手,圖省事卻累了自己。同理,文件及文件夾命名方面也不宜過簡(jiǎn),象《網(wǎng)站重構(gòu)》里建議把圖片都用“i”目錄存放,個(gè)人以為并不可取,除非你能為這種高度縮寫的目錄結(jié)構(gòu)撰寫詳細(xì)說明并保證每個(gè)相關(guān)人員包括其他制作人員、開發(fā)、甚至懂行的老板……都能理解和執(zhí)行,否則只會(huì)給你自己增添不必要的麻煩。

2、ID是狙擊槍,class是雙刃劍

想要做好網(wǎng)頁結(jié)構(gòu),id與class都是必須熟練掌握的,所謂“兩手抓,兩手都要硬”。ID就象狙擊槍一樣,可以幫助我們精準(zhǔn)地定位要想要加載樣式的元素;而class則是俠客的佩劍,信手拈來更加輕盈靈便,兩者的結(jié)合能夠?qū)崿F(xiàn)結(jié)構(gòu)良好且表現(xiàn)豐富的頁面。然而現(xiàn)在有一種錯(cuò)誤的觀點(diǎn),就是id完全可以用class來取代,事實(shí)上許多網(wǎng)頁源代碼也的確如此,打開來通篇class,找不到一個(gè)id。造成這種現(xiàn)象的理由有很多種,然而自table時(shí)代傳下來的根深蒂固的“class=CSS”的觀念才是本因。的確,class比id用途更廣更靈活,但也必須意識(shí)到,class對(duì)于構(gòu)建良好的網(wǎng)頁結(jié)構(gòu)遠(yuǎn)不如id有效。id的強(qiáng)制唯一性使得我們可以很容易通過id檢索到我們需要的任意模塊,而class則沒有這個(gè)優(yōu)勢(shì)。雖然我們可以為模塊定義唯一的class名,但前提是——只有制作者本人可以動(dòng)網(wǎng)頁樣式。否則換一個(gè)稍微懶一些伙計(jì),看到樣式相同便直接把前面的class拿來套用,其結(jié)果就是我們發(fā)現(xiàn)網(wǎng)頁里有十幾個(gè)模塊都叫做“gonggao”或者“xinwen”,以至于為了區(qū)分還不得不加上大量的html注釋,這樣的結(jié)果顯然并不是我們想要的。再者就是前面提到的,通過通用class所節(jié)省下來的代碼,又不得不在每個(gè)單獨(dú)定義的class中揮霍掉。

ID是狙擊槍,class是雙刃劍,合則兩利,分則兩敗。

3、并不是所有的內(nèi)容都需要div做“容器”

主菜單究竟是用<div id="mainnav"><ul>還是<ul id="mainnav">?這是一個(gè)博弈的問題。至今這個(gè)問題也沒有人能夠給出明確的答案,就連我也是如此。誠然,<div id="mainnav">在只包含了一個(gè)<ul>元素的時(shí)候,這個(gè)div就顯得有些冗余,但有時(shí)候?yàn)榱伺浜厦拦そk麗的設(shè)計(jì),多一層標(biāo)簽就意味著多一層變化(有些人在a標(biāo)簽里套span也是如此)。而div不帶任何原始屬性的先天優(yōu)勢(shì)也是其它標(biāo)簽所無法比擬的。這個(gè)命題我只是想說明一件事,就是我們應(yīng)該意識(shí)到,<div id="mainnav"><ul>之外,還有<ul id="mainnav">這種寫法,同樣具有良好的結(jié)構(gòu)和語義,并且省去了一層嵌套。在我們不需要為華麗的美工勞心勞神的時(shí)候,是不是也可以讓結(jié)構(gòu)更加簡(jiǎn)約呢?

這個(gè)命題其實(shí)還可以引申為——“并不是所有內(nèi)容都需要塊元素做容器”、“并不是所有鏈接都需要其它元素做容器”,例如很多頁面都有的“更多”。有些人寫做“<div class="more"><a>”,也有人寫做<p><a>或者<strong><a>。在這些“容器”只包含了一個(gè)<a>標(biāo)簽的時(shí)候,它們是否還有存在的必要?直接寫成<a class="more">會(huì)破壞結(jié)構(gòu)嗎?會(huì)缺乏語義嗎?會(huì)影響布局嗎?換一種思路,你也許就會(huì)有不一樣的收獲。

4、工作上也做到“結(jié)構(gòu)與表現(xiàn)分離”

關(guān)于這一點(diǎn),網(wǎng)絡(luò)上很多高手都是這樣建議的,也就是先打開編輯器,把結(jié)構(gòu)完整地寫出來,再去CSS里寫表現(xiàn),而盡量不去動(dòng)已經(jīng)寫好的結(jié)構(gòu)。

然而以看書為主要學(xué)習(xí)方式的人卻很難體會(huì),因?yàn)殛P(guān)于標(biāo)準(zhǔn)的書籍多半是手把手來教的,也就是必然是結(jié)構(gòu)表現(xiàn)結(jié)合,循序漸進(jìn)。雖然有些書籍有這方面的建議,但短短的幾句話遠(yuǎn)不如讀書過程中的潛移默化。在制作人員能夠?qū)Y(jié)構(gòu)良好把握的時(shí)候,同時(shí)寫結(jié)構(gòu)與表現(xiàn)也不會(huì)對(duì)結(jié)果有太大的影響。但以我的經(jīng)驗(yàn),結(jié)構(gòu)表現(xiàn)分離的工作方式,要比同時(shí)寫結(jié)構(gòu)與表現(xiàn)效率高很多,同時(shí)也不容易遺漏頁面上的元素。

當(dāng)然,所謂的“結(jié)構(gòu)與表現(xiàn)分離”并不是完全不考慮表現(xiàn),想要兼顧到表現(xiàn),就要保證——在不破壞結(jié)構(gòu)的前提下,CSS選擇器能夠選擇到盡量多的內(nèi)容。在哪些地方加class,或者用哪些標(biāo)簽來區(qū)分,是一個(gè)見仁見智的地方,相信每個(gè)人都有自己的體會(huì)。而結(jié)合不同的設(shè)計(jì)稿,有時(shí)候也需要做出相應(yīng)的變化,然而這些變化都應(yīng)該有一個(gè)同樣的前提——不破壞代碼的結(jié)構(gòu)和可讀性。

再就是,一定要意識(shí)到,任何可視化的工具都是魔鬼。它們可視化界面下所呈現(xiàn)的效果,往往與真實(shí)瀏覽器相差千里,而我們真正要兼容的是瀏覽器,不是編輯器的可視化界面。

5、CSS不是萬能的,沒有CSS也不是萬萬不能的

相比于CSS1.0時(shí)代,今天CSS可以完成更多的事情,然而需求永遠(yuǎn)是領(lǐng)先于技術(shù)的,CSS無法完成網(wǎng)頁所有的表現(xiàn)層工作,有時(shí)候我們必須結(jié)合JS或者其他語言來實(shí)現(xiàn)一些效果。而另一些時(shí)候,用JS的方法比只靠CSS簡(jiǎn)單得多,并且代碼結(jié)構(gòu)更加良好——最典型的例子就是下拉菜單。這些時(shí)候,我們要說服自己,或者說服老板與客戶,去采用更簡(jiǎn)單更合理的方式。因?yàn)镈OM同樣是網(wǎng)頁標(biāo)準(zhǔn)的重要組成,并不是使用了JS我們的網(wǎng)頁就降低了效率或是不再標(biāo)準(zhǔn),恰恰相反,這是對(duì)JS最大的誤解。說到這里不得不提一點(diǎn),就是今天的時(shí)代,比以往更要求每個(gè)職業(yè)了解更多的相關(guān)知識(shí),做設(shè)計(jì)的人要懂一點(diǎn)交互和制作,做制作的也必須了解設(shè)計(jì)和程序,尤其是JS這樣的前端技術(shù),只有這樣,你和同事才能夠更好地合作,個(gè)人的發(fā)展前景也會(huì)更加光明。

沒有CSS,指的是當(dāng)我們的網(wǎng)站因?yàn)楦鞣N未知的原因?qū)е翪SS文件載入失敗,不要因此而慌亂,這是考驗(yàn)我們代碼質(zhì)量的最佳時(shí)機(jī)。在沒有CSS的時(shí)候,如果網(wǎng)頁仍舊保持良好的可讀性,這成果要遠(yuǎn)比通過W3C驗(yàn)證更值得我們自豪。

轉(zhuǎn)載自68設(shè)計(jì)

相關(guān)閱讀
innerHTML動(dòng)態(tài)改變ID的CSS樣式表
購買深山旅行社管理系統(tǒng)后享受哪些服務(wù)?
來自網(wǎng)易空間排行寬度可以變化的選項(xiàng)卡
CSS Alpha透明代碼相關(guān)知識(shí)學(xué)習(xí)
山西省青年旅行社
asp論壇制作教程(二)——asp論壇制作文件關(guān)系發(fā)析
超級(jí)實(shí)用且不花哨的js代碼大全( 4 )
襄陽康輝國(guó)際旅行社
共有0條關(guān)于《網(wǎng)頁制作,改變你的思維方》的評(píng)論
發(fā)表評(píng)論
正在加載評(píng)論......
返回頂部發(fā)表評(píng)論
呢 稱:
表 情:
內(nèi) 容:
評(píng)論內(nèi)容:不能超過 1000 字,需審核,請(qǐng)自覺遵守互聯(lián)網(wǎng)相關(guān)政策法規(guī)。
驗(yàn)證碼: 驗(yàn)證碼 
網(wǎng)友評(píng)論聲明,請(qǐng)自覺遵守互聯(lián)網(wǎng)相關(guān)政策法規(guī)。

您發(fā)布的評(píng)論即表示同意遵守以下條款:
一、不得利用本站危害國(guó)家安全、泄露國(guó)家秘密,不得侵犯國(guó)家、社會(huì)、集體和公民的合法權(quán)益;
二、不得發(fā)布國(guó)家法律、法規(guī)明令禁止的內(nèi)容;互相尊重,對(duì)自己在本站的言論和行為負(fù)責(zé);
三、本站對(duì)您所發(fā)布內(nèi)容擁有處置權(quán)。

更多信息>>欄目類別選擇
百度小程序開發(fā)
微信小程序開發(fā)
微信公眾號(hào)開發(fā)
uni-app
asp函數(shù)庫
ASP
DIV+CSS
HTML
python
更多>>同類信息
jquery設(shè)置或獲取修改classname
利用css3.0寫出一個(gè)音樂播放的唱片碟盤的效果
利用css中的scale()實(shí)現(xiàn)放大縮小效果
利用background-color:#000000a8在背景顏色16進(jìn)制代碼之后加字母加上數(shù)字讓背景色透明
css背景使用base64編碼或者將base64編碼放在img圖片標(biāo)簽中
利用css3中的-webkit-font-smoothing把網(wǎng)頁文字的毛邊去掉
更多>>最新添加文章
dw里面查找替換使用正則刪除sqlserver里面的CONSTRAINT
Android移動(dòng)端自動(dòng)化測(cè)試:使用UIAutomatorViewer與Selenium定位元素
抖音直播音掛載小雪花 懂車帝小程序
javascript獲取瀏覽器指紋可以用來做投票
火狐Mozilla Firefox出現(xiàn):無法載入您的Firefox配置文件 它可能已經(jīng)丟失 或是無法訪問 問題解決集合處理辦法
在Android、iOS、Windows、MacOS中微信小程序的文件存放路徑
python通過代碼修改pip下載源讓下載庫飛起
python里面requests.post返回的res.text還有其它的嗎
更多>>隨機(jī)抽取信息
asp采用access數(shù)據(jù)庫搜索信息時(shí)因?yàn)槿瘴钠倜麊栴}提示“Microsoft JET Database Engine 錯(cuò)誤80040e14”的解決方法
獲取客戶真實(shí)IP地址
uni-app基礎(chǔ)知識(shí)條件渲染
請(qǐng)勿在本地站發(fā)布亂七八糟的廣告,本站所有的留言與評(píng)論全是需要審核的
移動(dòng)層,并且保存各個(gè)層的位置,可以方便的制作成為一個(gè)動(dòng)態(tài)的頁面
uni-app操作json數(shù)組
隔壁人妻偷人bd中字_特黄特黄一级片_国产午夜大地久久_污色网站在线观看_a天堂资源在线观看_精品日韩久久久_欧美日韩福利在线_欧美日韩一区二区在线免费观看_欧美大尺度做爰床戏_国产情侣av自拍
成人小视频免费在线观看| 国产在线观看一区二区| www.激情成人| 国产免费一区二区三区网站免费| 欧美色图在线观看| 欧美电影免费观看高清完整版在线| 亚洲欧洲成人自拍| 国产88在线观看入口| 狠狠色丁香九九婷婷综合五月| 99久久伊人精品| 99久久精品久久亚洲精品| 日韩一区和二区| 亚洲精品成人a在线观看| 国产白丝精品91爽爽久久 | 91国偷自产一区二区三区成为亚洲经典 | 手机免费看av片| 欧美中文字幕一区二区三区亚洲| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 成年人视频软件| 精品成人佐山爱一区二区| 青青国产91久久久久久| 风间由美一二三区av片| 欧美一二三区在线| 亚洲国产精品自拍| 亚洲av无码一区东京热久久| 欧美性受xxxx黑人xyx| 亚洲人成精品久久久久| 不卡的av电影在线观看| 草视频在线观看| 中文字幕日本不卡| 国产成人精品免费| 欧美日韩色视频| 亚洲欧洲99久久| 成人av在线影院| 91精彩视频在线| 欧美成人三级电影在线| 国产精品青草综合久久久久99| 国产又粗又猛又爽又黄的视频四季| 日韩色在线观看| 日本vs亚洲vs韩国一区三区二区| 野战少妇38p| 在线播放亚洲一区| 日韩福利电影在线| 亚洲熟妇无码av| 精品国产乱码久久| 国产一区二区三区av电影| 9.1片黄在线观看| 国产精品欧美极品| 91在线精品一区二区三区| 欧美性色aⅴ视频一区日韩精品| 亚洲国产日韩一区二区| 超碰男人的天堂| 精品国偷自产国产一区| 国内成人免费视频| 欧美丰满熟妇bbbbbb| 亚洲欧美日本在线| 免费黄色a级片| 日韩午夜激情av| 国产精品自产自拍| 一本色道久久综合亚洲91| 一区二区三区蜜桃| 国产激情视频网站| 国产视频一区二区在线观看| 成人免费观看视频| 欧美日韩国产一级片| 麻豆精品视频在线| 国产精品白丝喷水在线观看| 亚洲欧美日韩在线| 少妇被狂c下部羞羞漫画| 精品国产一区二区三区不卡 | 精品国产成人系列| 国产99久久久国产精品潘金| 日本乱人伦aⅴ精品| 亚洲成人综合视频| 日韩女同一区二区三区| 亚洲色图欧美激情| 亚洲图片综合网| 国产精品另类一区| 亚洲国产综合视频| 国产无遮挡一区二区三区毛片日本| 99精品视频在线观看免费| 日韩天堂在线观看| 成人激情小说乱人伦| 欧美日韩在线直播| 韩国三级中文字幕hd久久精品| 色国产精品一区在线观看| 日韩电影免费在线| 色综合天天综合给合国产| 日韩精品免费专区| 91插插插插插插| 丝袜美腿高跟呻吟高潮一区| 国产视频精品免费| 日韩激情在线观看| 色综合天天综合网天天狠天天| 免费在线观看一区| 欧美性xxxxxx少妇| 国产福利一区在线| 欧美va日韩va| 韩国av中国字幕| 欧美国产精品专区| 性久久久久久久久久| 亚洲精品中文在线观看| 久久午夜精品视频| 日本免费在线视频不卡一不卡二| 久久中文免费视频| 久久99国内精品| 欧美日韩视频专区在线播放| 国产高清亚洲一区| 精品剧情在线观看| 国产一区二区三区日韩| 91精品国产高清一区二区三区| 一本大道综合伊人精品热热| 香蕉av福利精品导航| a级片在线观看免费| 久久99国产精品成人| 欧美片在线播放| 成人精品小蝌蚪| 日韩一级视频免费观看在线| av网站一区二区三区| 久久久久88色偷偷免费| 亚洲 欧美 日韩在线| 国产精品久久久久久福利一牛影视| 精品成人无码一区二区三区| 亚洲高清免费观看| 一本久久精品一区二区| 国产99精品在线观看| 久久久精品tv| 中文字幕在线不卡国产视频| a级黄色片免费看| 99久久精品国产一区| 激情图区综合网| 国产 欧美 在线| 久久综合色婷婷| 国产一区二区在线观看免费 | 日本天堂中文字幕| 国产精品久久毛片av大全日韩| 午夜视频在线观看国产| 亚洲欧美日韩在线不卡| 日本在线观看网址| 国产成人免费视频| 久久久久国产成人精品亚洲午夜| k8久久久一区二区三区| 亚洲人成网站精品片在线观看| 欧美风情第一页| 成人18视频在线播放| 国产精品污网站| 精品无人区无码乱码毛片国产| 美女一区二区久久| 91精品国产综合久久婷婷香蕉 | 午夜精品成人在线视频| 欧美人狂配大交3d怪物一区| 亚洲成人激情小说| 亚洲一区二区高清| 日韩午夜在线影院| 少妇久久久久久久久久| 韩国成人福利片在线播放| 久久久久久亚洲综合影院红桃| 亚洲精品成人无码| 丁香婷婷综合网| 国产精品久久久久婷婷二区次| 农村妇女精品一区二区| 乳色吐息在线观看| 亚洲一卡二卡三卡四卡无卡久久| 91精品久久久久久久99蜜桃| 亚洲国产精品成人综合久久久| 久久99精品一区二区三区三区| 久久综合狠狠综合| 91麻豆精品久久毛片一级| 国产成人亚洲综合色影视| 欧美国产精品久久| 欧美午夜精品电影| 中文字幕一区二区人妻电影丶| 精品一区二区三区免费| 久久久99免费| 欧美综合久久久| 日韩免费高清一区二区| 激情伊人五月天久久综合| 国产精品理伦片| 欧美色中文字幕| 亚洲精品成人av久久| 成人av免费在线播放| 日韩精品一级二级 | 欧美日韩成人激情| 免费观看av网站| 国产成人精品免费在线| 一区二区三区在线视频免费| 欧美成人午夜电影| www.5588.com毛片| 大乳护士喂奶hd| 国产精品亚洲专一区二区三区 | 粉嫩av一区二区三区在线播放| 亚洲va韩国va欧美va| 欧美一级片在线看| 欧洲猛交xxxx乱大交3| 国产又黄又粗又猛又爽的视频 | 一区二区三区欧美日韩| 久久综合中文字幕| 69av视频在线| 免费观看a级片| 99re成人精品视频|