ul列表中包含input時line-height屬性失效的解決辦法_DIV+CSS實(shí)例
教程Tag:暫無Tag,歡迎添加,賺取U幣!
問題:為什么<UL>列表含<input>控件時,行高屬性在IE6.0下失效?FF2.0下正常。這是一個不常見的問題,我們不提倡這樣的布局方式,input元素盡可能的使用lable標(biāo)簽而不是包含于ul的li標(biāo)簽中。但在實(shí)際操作中,也可能存在這樣的情況,我們就ul列表中包含input時line-height屬性失效的問題作一些探討。
我們知道input標(biāo)簽是一個block元素,也就是一個塊元素,而line-height只可以應(yīng)用于inline行內(nèi)元素。所以line-height屬性的設(shè)置對input元素是無效的。我們看下面的代碼:
[ 可先修改部分代碼 再運(yùn)行查看效果 ]
CSS模板下載所在的li標(biāo)簽及input元素,行高明顯的小于40px。因?yàn)閕nput是block元素?zé)oline-height屬性可言。我們只能通過變通的方法來解決問題。
首先我們定義好input標(biāo)簽的外觀,即他的寬度與高度。然后設(shè)置邊距,使其達(dá)到與其它li列表項(xiàng)同樣行高的視覺效果,而不是通過line-height屬性來實(shí)現(xiàn)。
我們定義input元素的邊框?yàn)橐幌笏氐幕疑珜?shí)線。寬度與高度分別是120px與20px。我們定義的li列表項(xiàng)的行高為40px。要使input元素如其它列表項(xiàng)一樣,則設(shè)置input元素的上下邊距為10px。即達(dá)到了行距為40px的效果。但這樣會造成“CSS模板下載”與input標(biāo)簽水平不對齊,我們設(shè)置vertical-align:middle。使得文字與輸入框水平對齊。關(guān)于vertical-align:middle的相關(guān)知識,心細(xì)的你或許會發(fā)現(xiàn),我們這里也設(shè)置了line-height屬性,值是20px。這里的line-height屬性設(shè)置是input輸入文字的行高,我們這樣設(shè)置,可以使輸入文字在輸入框垂直居中。
通過此例,我們應(yīng)該注重區(qū)分不同的屬性所能作用的對象,line-height屬性是inline元素所擁有的,對于block元素是不起作用的。我們看最終的運(yùn)行效果:
[ 可先修改部分代碼 再運(yùn)行查看效果 ]
我們知道input標(biāo)簽是一個block元素,也就是一個塊元素,而line-height只可以應(yīng)用于inline行內(nèi)元素。所以line-height屬性的設(shè)置對input元素是無效的。我們看下面的代碼:
代碼調(diào)試框 [m.dounai2.com]
[ 可先修改部分代碼 再運(yùn)行查看效果 ]
CSS模板下載所在的li標(biāo)簽及input元素,行高明顯的小于40px。因?yàn)閕nput是block元素?zé)oline-height屬性可言。我們只能通過變通的方法來解決問題。
首先我們定義好input標(biāo)簽的外觀,即他的寬度與高度。然后設(shè)置邊距,使其達(dá)到與其它li列表項(xiàng)同樣行高的視覺效果,而不是通過line-height屬性來實(shí)現(xiàn)。
示例代碼 [m.dounai2.com]
input {
border:1px solid #666;
width:120px;
height:20px;
margin:10px 0;
vertical-align:middle;
line-height:20px;
}
border:1px solid #666;
width:120px;
height:20px;
margin:10px 0;
vertical-align:middle;
line-height:20px;
}
我們定義input元素的邊框?yàn)橐幌笏氐幕疑珜?shí)線。寬度與高度分別是120px與20px。我們定義的li列表項(xiàng)的行高為40px。要使input元素如其它列表項(xiàng)一樣,則設(shè)置input元素的上下邊距為10px。即達(dá)到了行距為40px的效果。但這樣會造成“CSS模板下載”與input標(biāo)簽水平不對齊,我們設(shè)置vertical-align:middle。使得文字與輸入框水平對齊。關(guān)于vertical-align:middle的相關(guān)知識,心細(xì)的你或許會發(fā)現(xiàn),我們這里也設(shè)置了line-height屬性,值是20px。這里的line-height屬性設(shè)置是input輸入文字的行高,我們這樣設(shè)置,可以使輸入文字在輸入框垂直居中。
通過此例,我們應(yīng)該注重區(qū)分不同的屬性所能作用的對象,line-height屬性是inline元素所擁有的,對于block元素是不起作用的。我們看最終的運(yùn)行效果:
代碼調(diào)試框 [m.dounai2.com]
[ 可先修改部分代碼 再運(yùn)行查看效果 ]
相關(guān)DIV+CSS實(shí)例:
- 固定div容器的寬高,圖片居中(圖片不限制大小)
- 用css制作有滾動條的居中彈出框
- 鼠標(biāo)指住(hover)變色的按鈕演示demo
- 10個很酷的涂鴉風(fēng)格國外網(wǎng)店設(shè)計展示
- jquery模擬瀏覽器滾動條效果
- 仿谷歌google的搜索框下拉提示列表效果
- JS顯示網(wǎng)頁最后更新時間
- CSS技巧:text-indent隱藏文字(以圖換字)
- CSS實(shí)例:三列自適應(yīng)等高且中列寬度自適應(yīng)
- DivCSS布局實(shí)例:很實(shí)用的圖文混排CSS列表-富有語義
- DivCSS實(shí)例:CSS菜單Flash效果用圖片模擬實(shí)現(xiàn)
- DivCSS布局實(shí)例用dldtdd來制作列表
DIV+CSS實(shí)例Rss訂閱Div+Css教程搜索
DIV+CSS實(shí)例推薦
- CSS導(dǎo)航菜單:仿淘寶首頁導(dǎo)航條布局效果
- 一個非常棒的DIV CSS導(dǎo)航條效果!
- CSS實(shí)例:非常不錯的鼠標(biāo)懸停TIP效果!
- DIVCSS布局實(shí)例:各種2欄3欄布局實(shí)例(附下載)
- CSS背景圖片background-image須注意路徑問題!
- 使用fieldset、label標(biāo)簽制作form表單
- CSS實(shí)例:list-style-type在IE與FF中奇怪的現(xiàn)象解析
- 10個很酷的涂鴉風(fēng)格國外網(wǎng)店設(shè)計展示
- DIVCSS實(shí)例:一款不錯的CSS翻頁效果(DIGG)
- DIVCSS菜單實(shí)例:紅與黑具有立體質(zhì)感的CSS菜單
- 相關(guān)鏈接:
- 教程說明:
DIV+CSS實(shí)例-ul列表中包含input時line-height屬性失效的解決辦法。