日期:2013-08-22  浏览次数:21135 次

  在制造页面,添加材料的时候,可能会遇到这种情况,客户提供的表格数据太宽,把页面撑开了,我也遇到这样的问题,当我尽量给表格减肥,发现还是不行的时候,偶忽然想到了overflow:auto,这个属性。

  在这个大的数据表格外面套一个div,class是box,页面源码

<div class="box">
<table>
......
</table>
</div>

css这样写

.box{width:520px; overflow:auto;}

  css定义了这个div的overflow“auto”的属性,还有就是要给这个div一个适合这个页面的宽度。

  这样,当“box”里面的内容宽度大于css定义的宽度时,就会出现滚动条了。里面的内容可以是表格,也可以是图片等等。

  在上上面overflow:auto的问题中,为了不让内容撑开,我用了

.box{width:520px; overflow:auto;}

  但是这样会出现一个问题,就是横向和竖直滚动条都会出现,由于如果只定义了overflow,竖直滚动条会由于横向滚动条占用的空间而不断出现,后来为了隐藏竖直的滚动条,我这样写

.box{width:520px; overflow:auto;overfolw-y:hidden;}

  隐藏了竖直滚动条,问题虽然处理了,但是换个角度去想,为什么是让它出现了再隐藏,而不是不让它出现。查过了苏沈小雨-款式表中文手册当前发现只需定义overfolw-x的属性就可以了。

.box{width:520px; overfolw-x:auto;}

  如果不超过所定宽度,不显示滚动条,超过了宽度只显示横向滚动条,由于没有对竖直滚动overfolw-y定义,所以竖直滚动条也没有出现。

  语法:

overflow-x: visible | auto | hidden | scroll
 
参数:
visible: 不剪切内容也不添加滚动条。假如显式声明此默认值,对象将被剪切为包含对象的window或frame的宽度。
auto: 此为body对象和textarea的默认值。在需求时剪切内容并添加滚动条
hidden: 不显示超过对象宽度的内容
scroll: 总是显示横向滚动条

  overfolw-y与上面overflow-x类似,想要固定垂直高度,出现垂直滚动条的话,只需定义高度和overfolw-y的属性就可以了。