在以前的认知里,设置了定位的元素,top和bottom这些属性的作用是位移用的.然而今天发现,居然还有设置高度的作用,真是坑啊.文档里没讲.
.main{
width: 100%;
border: 1px solid red;
position: absolute;
top: 0;
bottom: 0;
right: 0;
left: 0;
}
从上面的代码可以看到,body没有设置高度,div元素设置了定位,但是没有设置高度.但是从控制台可以看到,这个div是有高度的,而且他的高度是自动调整的.并且上,左,右三个方向的位移都是0;
001.png
那为什么不用设置height:100%来达到相同的目的呢?
.main{
width: 100%;
height: 100%;
border: 1px solid red;
position: absolute;
}
001.png
这样设置后,发现上,左,右都有几个像素的位移.这样不利于布局,肯定还是要用到top,bottom,left这些属性来设置.这样子,height属性设置就显得多余了.因为即使不设置height属性,只设置top,bottom,left就达到目的了.
真是坑啊,文档里为什么没写.