在IE6下只要我設(shè)置LI的寬度為auto,不論LI里面的內(nèi)容多長(zhǎng),LI的寬度始終是100%,即UL的寬度(這里我已經(jīng)寫(xiě)死了UL的寬度)。設(shè)置max-width也沒(méi)用。高手們,在IE系列瀏覽器中如何使LI的寬度真正的隨著內(nèi)容增長(zhǎng)而增長(zhǎng)呢?像FF那樣。
先來(lái)解決問(wèn)題:
li{
max-width: 100px;/*具體數(shù)值自行修改,下一行相同*/
width:expression(document.body.clientWidth>100?"100px":"auto");
overflow: hidden;
}
把上面的100改成你自己的最大寬度即可。
然后再來(lái)討論UL LI內(nèi)容寬度問(wèn)題:
關(guān)于ul li文字長(zhǎng)度不固定,一行顯示多列。當(dāng)指定寬度時(shí),文字長(zhǎng)度超過(guò)指定的li寬度時(shí)解決方案:
如下代碼
復(fù)制代碼代碼如下:
樣式發(fā)送對(duì)象(共10個(gè)會(huì)員)
復(fù)制代碼代碼如下:
.menber{width:754px; margin:0px auto;line-height:25px; max-height:200px;}
.menber li{clear:none;width:200px;float:left;height:25px;line-height:40px; margin-right:30px;}
這段代碼是將會(huì)員信息都顯示出來(lái),一行顯示三個(gè),但是現(xiàn)在問(wèn)題出現(xiàn)了,這一行 <li>淘寶會(huì)員_u_865b68p1g7(u_265i54w3n7@localhost.com)</li> 因?yàn)閷挾裙潭ǎ莑i里面的內(nèi)容超過(guò)了200px導(dǎo)致且內(nèi)容中有下劃線且下劃線后是數(shù)字或者英文導(dǎo)致下劃線后面的內(nèi)容會(huì)自動(dòng)換一行顯示,但是由于li的高度是固定的導(dǎo)致掉下去的一行內(nèi)容與下面
這個(gè)可以控制文字顯示的寬度,并且可以整齊的排列,但是當(dāng)li里面的文字過(guò)多,超過(guò)200px時(shí),里面的內(nèi)容會(huì)掉到下面一行來(lái),導(dǎo)致與下面一行的內(nèi)容重疊,如果在.menber li里面加入overflow:hidden;的話內(nèi)容不會(huì)掉來(lái),但是內(nèi)容會(huì)顯示不全,這時(shí)應(yīng)該怎么辦呢,最好的解決辦法就是不指定寬度,將width設(shè)置為auto;并且 加上white-space:nowrap;這個(gè)代碼可以讓內(nèi)容不自動(dòng)換行(遇到_等字符串時(shí)),這個(gè)問(wèn)題是解決了,但是由于寬度不固定,所以內(nèi)容顯示不會(huì)那么整齊的,所有事情都很難十全十美,要顧及一些就要失去一些,這是沒(méi)辦法,如果各位大蝦有更好的解決辦法也可以分享一下。