遇到一个Opera下的overflow问题,暂时解决,但是方法不理想。

  最近在写代码的时候,遇到一个及其诡异的问题,当设置body的over-flow:auto,html的over-flow:hidden时, 在IE,FF,Chrome和Safari中浏览正常,如下图



但是在Opera中,滚动条桌面都不出来,只有开启Dragonfly时,滚动条才会出现,或者将body的over-flow也设置为auto后,才正常显示。

可是如果将body的over-flow也设置为auto,ff和safari就会出现双滚动条的情况,更让人郁闷。

最后只能通过Opera的CSS Hack来将body的over-flow设置为auto,代码如下:

body{    overflow:hidden;    }/*Opera 专属*/@media all and (-webkit-min-device-pixel-ratio:10000), not all and (-webkit-min-device-pixel-ratio:0){  body { overflow:auto;  }}

但是觉得这种hack方式不好, 不知道是否还有其他方法可以解决?

原文地址:https://www.cnblogs.com/yuxichina/p/2101056.html