多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當前位置:首頁 > web前端 > htmlcss > 正確認識DIV+CSS布局

正確認識DIV+CSS布局

來源:程序員人生   發(fā)布時間:2014-05-11 20:59:50 閱讀次數(shù):3163次

有不少網(wǎng)友在談論用到div+CSS布局這個說法,用來和table布局比較。it560認為實際上div不是用來布局的,div只是用來表示一個其它元素都無法準確表達語意的一個塊區(qū),只有CSS是用于布局的,所以根本就不存在div+CSS布局這回事。反過來,table布局的時候經(jīng)常依賴于CSS定義一個單元格的布局屬性,所以可以說是table+CSS布局。也就是說,我們討論的兩種主流布局方法應該是純CSS布局和table+CSS布局,如果你覺得你在用的是div+CSS布局,那么有可能你也有強迫癥了。

接下來我們說說如何進行純CSS布局,因為CSS布局依賴于XHTML,所以我們先要說說如何書寫一個CSS無關(guān)的XHTML。其實書寫CSS無關(guān)的XHTML并不難,雖然你不能再好像書寫table布局代碼那樣集中精力于最重的視覺效果上,但其難度也不過是中學生寫作文那樣。

中學生寫作文如何寫呢?首先看看題目,然后想想整篇文章分為哪幾個大的段落,每個大的段落說些什么,能夠把你要說的東西說清楚。對于XHTML來說,這相當于用div把文檔切割為幾大塊。這時候你不要想著這些div將構(gòu)建一個怎樣的DOM啊、CSS如何選擇DOM中元素設(shè)置規(guī)則實現(xiàn)布局之類的事情,就大概劃分一下文檔的大區(qū)域就好了。

然后當然是用一些常用的手法來表現(xiàn)感情或者論證問題,這在XHTML中就是用特定的元素來完成一些常見的信息組織。下面就是信息組織形式與元素的對應列表。

img
作為內(nèi)容的圖片是一定要放到img里面的,這沒有更好的選擇了。然而如果圖片不是作為內(nèi)容,而是作為修飾性的,則千萬不要用img。對于非內(nèi)容的圖片,應該在CSS中引用,而不在XHTML中出現(xiàn)。例如每一個導航鏈接有一個前導的箭頭指示,那么這些箭頭就應該通過CSS的background-image屬性加上去,而不是直接作為img出現(xiàn)。

a
這也是一個非常準確定義的元素,鏈接都需要使用它?;蛟S已經(jīng)有很多人忘記了a的本意是錨點,其實這是一個十分有用的語義,你可以用它來標記文檔中一些重要的引用位置。

ul, ol
ul和ol分別是什么意思呢?如果你回答不上來,卻知道它們可以用來干什么,那證明你是被可視化工具寵壞了,要轉(zhuǎn)換過來編寫符合語義的XHTML需要先補充基礎(chǔ)知識,這時候你最好先找一些看起來非常基礎(chǔ)非常全面的XHTML書籍看看,因為沒有扎實的基礎(chǔ)你在上面構(gòu)建更多的知識都是不牢固的。ul和ol其實分別代表unordered list和ordered list,也就是無序列表和有序列表。在語義上,它們都用于表示一類并列關(guān)系的內(nèi)容,例如我們?nèi)ド痰曩徫镏傲幸粡坰hopping list,上面要買的東西就是并列關(guān)系,在中文可以用頓號隔開那種。

休息夠了吧?下面繼續(xù)看!

ul常用于導航條,因為導航元素符合上面所說的并列關(guān)系,樹狀導航結(jié)構(gòu)還可以通過嵌套ul來表述。在這里,導航可以是我們常見的水平或豎直導航欄,甚至可以是地圖導航,例如在中國地圖上不同的省份熱區(qū)其實是不同的li。如果我說,在主流瀏覽器上用戶看到了中國地圖和可以直接點擊省份熱區(qū),在不支持CSS的瀏覽器上用戶能看到一份純文本的省份名稱列表,使用的是同一份XHTML,而這完全通過CSS實現(xiàn),甚至不依賴于JavaScript,你相信嗎?

另外,如果你要顯示一個圖庫的縮略圖,這些圖片也可以放在ul中哦,因為這些圖片也是并列關(guān)系。它們可以自動先橫排,排滿一行就自動排第二行,CSS可以讓他們乖乖排隊,而不需好像table那樣把圖片定死在一個格子里。其實table用于布局就如同用監(jiān)獄關(guān)押內(nèi)容一樣,把內(nèi)容鎖死在一個格子里不讓它到處亂跑;符合語義的XHTML就如同一個開放的舞臺,你只要懂得利用CSS的規(guī)則,內(nèi)容就自然會找一個適合表現(xiàn)自己的地方站著。

dl
沒有聽說過dl嗎?因為那些可視化工具生成的代碼中從來不會出現(xiàn)dl?dl的意思是definition list,也就是定義列表。它包含的子元素不是li,而是dt和dd,也就是definition term和definition description。dl本身設(shè)計為字典單詞與解釋列表這樣的語義,例如:
<dl>
<dt>hehe</dt>
<dd>哈哈</dd>
<dt>girl</dt>
<dd>it560</dd>
</dl>

如果你需要表示的的語義也是類似的,一個列表既包含定義也包含解釋,那么也可以考慮用dl。

form, input
form也就是表單啦,這沒什么好說的,就算再不顧及語義的人在書寫XHTML時也會考慮到它與各種input對提交數(shù)據(jù)的影響,從而小心謹慎。

table
table自然是用來表示表格的,這不廢話!如果是數(shù)據(jù)表,當然可以用table來表示,但如果不是,就最好別用table了。

人名列表呢?例如一個3行4列的人名列表。如果這12個人名是并列關(guān)系,我建議你用ul和12個li來表示,再通過CSS來讓它們在一行內(nèi)并列顯示多個。名片表呢?也就是3行8列,每兩列中左側(cè)一列顯示人名右側(cè)一列顯示電話地址等聯(lián)系方式。我覺得dl在一定程度上能滿足此需求,dt放人名,dd放聯(lián)系方式,不過這時候就涉及了dl濫用的爭論,因為人名與聯(lián)系方式當作定義與解釋有點牽強。

接下來還有一個關(guān)于你是否系統(tǒng)學習過XHTML的小提問,那就是你是否知道table下面的caption、col、colgroup、thead、tbody、tfoot元素及summary屬性分別用于定義什么,還有就是你書寫table時是否會使用thead、tbody。

div, span
再次審閱上面的列表,如果你需要表示一個塊區(qū)卻無法在上面找到更適合的元素,那么你就可以考慮使用div和span這兩個最沒有語義的元素了。div與span的區(qū)別,歷史上的不說了,現(xiàn)在通常大塊的區(qū)域用div,行內(nèi)的小文本片段就用span。在上面我已經(jīng)說了div一般用于全局劃分為幾個大的區(qū)域,所以一般不需要使用了。span其實也很少使用,因為行內(nèi)的強調(diào)通??梢杂谜Z義更強的元素例如strong和em。

在理解上上述那么多常用元素后,寫一個XHTML就真的如同中學生寫作文一樣輕而易舉,現(xiàn)在你理解了你在搭的是什么,而以前你只在乎搭出你想要的視覺效果來。寫代碼與寫作文所類似的地方,就在于你寫得越多就越熟練,也就越能寫出好東西來。在寫好XHTML后我們就要開始考慮如何寫CSS了,或許還需要在XHTML中略作修改以方便CSS中規(guī)則的選擇與匹配,不過這是以后再說的內(nèi)容了,今天就說到這里。

相關(guān)文章:

使用DIV+CSS網(wǎng)站布局的利弊分析

div+css設(shè)計中ID的命名習慣和規(guī)范

Css+Div布局小結(jié)

用div+css實現(xiàn)水平垂直居中
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 日本成人在线网址 | 国产亚洲精品网站 | 99久久久国产精品免费牛牛四川 | 亚洲国产精品a一区二区三区 | 黑人又大又粗又长又深受不了 | 精品成人一区二区 | 最近免费中文字幕大全免费 | 欧美激情在线播放一区二区三区 | 黄网站色网址 | 羞羞动漫在线看 | 国产欧美日韩免费一区二区 | 国产片欧美片亚洲片久久综合 | 欧美午夜视频在线观看 | 麻豆网址在线观看 | 欧美人与动性行为另类 | 亚洲成人伊人网 | 久久视频精品36线视频在线观看 | 秋霞特色aa大片在线观看 | 最近高清中文在线字幕在线观看 | 欧美一区二区二区 | 欧美片第一页 | 国产一区福利 | 中文字幕视频一区二区 | 天天躁夜夜 | 99热精品成人免费观看 | 手机在线一区二区三区 | 日本爱爱网站 | 欧美性大战久久久久久久 | 国产在线高清不卡免费播放 | 亚洲毛片网 | 国产成人精品日本亚洲专一区 | 青草超级碰碰在线视频 | 欧美一级大黄特黄毛片视频 | 久久国产精品久久国产精品 | 久久大香伊蕉在人线国产联合 | 国内精品伊人久久久久 | 国产在线a| 97影院午夜在线观看琪琪 | 嫩草影院久久国产精品 | 波多野结衣在线网站 | 国产一区二区三区免费 |