正好自己以前写过,奉上最简短的代码,效果已亲测,兼容IE7/8以及ChROMe等现代浏览器,代码如下:

html,body {height:100%; *overflow:hidden; /* 消除IE7下的横向滚动条 */}
这里已经自适应到底部
注:IE6不支持,如想完美解决,请使用js动态获取页面高度,然后赋值给nav那个层。
要将多个div设置成同一行,可以使用css中的display属性。通过设置display属性为inline-block或者flex,可以让div元素在同一行上显示。
使用inline-block会将元素显示为内联块级元素,然后可以通过设置宽度和浮动等属性来控制它们在同一行上的位置。
而使用flex布局可以通过设置flex容器和flex子项的属性来控制它们在同一行上的排列方式。通过这样的方式,就可以很容易地将多个div设置成同一行显示,从而实现页面布局的需求。
方法一:使用CSS的`display: flex`属性
1. 为父元素(容器)添加CSS属性`display: flex;`。
2. 为子元素(DIV)添加CSS属性`flex: 1;`,以便它们垂直分布并填充容器空间。
方法二:使用CSS的`display: table-cell`属性
1. 为父元素(容器)添加CSS属性`display: table;`。
2. 为子元素(DIV)添加CSS属性`display: table-cell;`,以便它们垂直分布并填充容器空间。
方法三:使用CSS的`float`属性
1. 为第一个子元素(DIV)添加CSS属性`float: left;`。
2. 为第二个子元素(DIV)添加CSS属性`clear: left;`,以便它们垂直分布。
这些方法都可以实现两个DIV元素在网页中的垂直排列。具体使用哪种方法取决于您的设计和开发需求。