首页 >web前端 >html教程 >CSS布局中,内容溢出了,为什么给body设置了overflow属性也不行?_html/css_WEB-ITnose

CSS布局中,内容溢出了,为什么给body设置了overflow属性也不行?_html/css_WEB-ITnose

WBOY
WBOY原创
2016-06-24 12:07:132435浏览



上面的绿色区域超出了页面,给body设置overflow:scroll;

结果是下面这样,滚动条只是外观上出来了,但是不能滚动,这是为神马?



新手求指导~


回复讨论(解决方案)

你应该给body设置定高,不然如果内容没有超出可视区的高度,自然不会滚动,你可以改变窗口的大小来看效果

你应该给body设置定高,不然如果内容没有超出可视区的高度,自然不会滚动,你可以改变窗口的大小来看效果
确实,一开始,我给BODY的HEIGHT设置了100%,所以没有作用,现在让它超出100%就能滑动了。但是我的每个div的height都是用百分数设置的,为什么改变了body的height之后,他们的高度都没发生变化呢?

我明白我错哪了:
我一开始给页面每个div用的position:absolute来布局,所以给body设置height:150%的时候对div没有高度变化的影响。但是用这种方式布局必须设置每一个div的left和top,而且改动上面的div会导致下面的数据必须跟着变。更麻烦的是left和top在用百分数的时候,随着浏览器的放大缩小,元素的位置很不稳定。

改用对部分元素float,部分元素调整margin的方法来布局,当内容超出页面的时候无论设置不设置overflow页面都会自动加上滚动条,这又是为什么?

body 本身就是有内容撑开高度的,既然超出了可视区的高,自然会出现滚动条.

body 本身就是有内容撑开高度的,既然超出了可视区的高,自然会出现滚动条.
明白了,谢谢!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn