设置高度:我的标签元素上的100%不起作用
我试图设定height: 100%;
在标签,但它没有工作。 为什么不?
.field label { color:#3E3E3E; font-weight:bold; width:80px; display:block; float:left; margin-top:5px; margin-left:3px; height:100%; /* <-- doesn't work */ } .field { display:block; margin-bottom:9px; background:none; border:none; }
<div class="field large"> <label>Textarea</label> <textarea></textarea> </div>
你有高度设置为100%,但是100%是什么? 它始终是该元素的父项,那么父项的高度是多less? 如果它没有设置任何东西,那么浏览器没有什么可引用的。
在这种情况下,我相信你的div的高度是由其中最高的元素的高度决定的:文本区域。 ( 参考 )也许你想知道你的文本区域有多less像素(例如,这可以用Firebug,IE或Chrome的开发者工具来完成),然后将你的标签设置为相同的高度。
我也明确地设置了文本区域的高度,以确保它在所有浏览器中都是一样的。
原因height: 100%
不能正常工作,因为您期望父元素具有auto
高度。 这会导致您的标签也获得auto
计算的高度。
<百分比>指定百分比高度。 百分比是根据生成的包含盒子的高度来计算的。 如果包含块的高度没有明确指定(即,取决于内容高度),并且该元素没有被绝对定位,则该值计算为“auto”。
( 参考 )