這里我們再看,情況相反,IE的預(yù)設(shè)標(biāo)記不見了,而FF中的預(yù)設(shè)標(biāo)記還在,這里要注意的是這時FF中的預(yù)設(shè)標(biāo)記是在背景里的。當(dāng)然我們這里有點不理解了,到底這是為什么呢?這個預(yù)設(shè)標(biāo)記究竟是在什么地方的呢?下面我們通過一個實例來看一下UL的預(yù)設(shè)標(biāo)記是在什么地方的!
HTML結(jié)構(gòu):
<ul> <li>建設(shè)部通報八起房地產(chǎn)交易違法、違規(guī)典型案例 </li> <li>周小川表態(tài)引發(fā)美元震蕩|人民幣應(yīng)成世界貨幣?</li> <li>首都機(jī)場一香港乘客制造炸彈威脅導(dǎo)致航班延誤</li> <li>美國房市“麻煩”未了|底特律房子比車子便宜</li> <li>網(wǎng)絡(luò)報告:美國是黑客大本營 中國是最大受害國</li> </ul>
CSS代碼:
ul {background:#ddd; padding:100px; margin:100px; border:100px solid #eee; } li {background:#aaa;}
運行代碼框
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]
這時我們看到,margin區(qū)域是最外圍的白色部分,往里有點灰色的是border,再往里是更深一點的灰色,這個區(qū)域是padding,最深的區(qū)域是內(nèi)容區(qū)。而預(yù)設(shè)標(biāo)記正處在padding的區(qū)域,那么是不是說把padding區(qū)去掉這個預(yù)設(shè)標(biāo)記就會消失呢?我們把CSS做一下修改:
CSS代碼:
ul {background:#ddd; padding:0; margin:100px; border:100px solid #eee; } li {background:#aaa;}
運行代碼框
[Ctrl+A 全部選擇 提示:你可先修改部分代碼,再按運行]
我們把padding設(shè)為0后發(fā)現(xiàn)預(yù)設(shè)標(biāo)記依然還在,不過這時他處在了border的上面,那么我們可以根據(jù)上面推測出預(yù)設(shè)標(biāo)記并不存在于margin,padding或是border中,margin,padding與border只不過為預(yù)設(shè)標(biāo)記提供了一個存在并顯示的空間。而這個預(yù)設(shè)標(biāo)記是浮于margin,padding與border之上的。
那么這時我們大致上可能已經(jīng)理解了,其實IE與FF對于UL的默認(rèn)值的設(shè)定是不一樣的,IE給了UL一個margin值,但是卻沒有給padding值,所以IE中UL的預(yù)設(shè)標(biāo)記點是在背景外的。而FF相反給了一個padding值卻沒有給margin值,所以在FF中UL的預(yù)設(shè)標(biāo)記點是在背景內(nèi)的。但是依據(jù)上面的實例我們清楚,這個預(yù)設(shè)標(biāo)記點不屬于paading也不屬于margin。他只屬于內(nèi)容部分,他一直是在內(nèi)容的外邊緣,當(dāng)然我們還可以通過CSS來設(shè)置其在內(nèi)容的內(nèi)邊緣;痉绞秸埐殚啞禖SS2中文手冊》
通過上面的例子我們清楚了,想要讓這個預(yù)設(shè)標(biāo)記消失光用margin:0;與padding:0;因為如果出現(xiàn)了border的寬度達(dá)到一定的數(shù)值時這個預(yù)設(shè)標(biāo)記還是會出現(xiàn)的。所以正確的寫法是:margin:0; padding:0; list-style:none;
雖然預(yù)設(shè)標(biāo)記很不錯,但是卻沒辦法精確控制,所以在實際應(yīng)用中并不推薦使用,還是用背景圖來代替!
經(jīng)典論壇討論: http://bbs.blueidea.com/thread-2729525-1-1.html
本文鏈接:http://www.95time.cn/tech/web/2007/4555.asp
出處:藍(lán)色理想
責(zé)任編輯:moby
上一頁 Firefox與IE下UL預(yù)設(shè)標(biāo)記的異同 [1] 下一頁
◎進(jìn)入論壇網(wǎng)頁制作、網(wǎng)站綜合版塊參加討論
|