iframe在IE6下出现横向滚动条的解决方案

iframe在IE6下出现横向滚动条的解决方案,第1张

iframeIE6下出现横向滚动条的解决方案 情况如下:(PS:红框表示iframe的区域,灰色的长方框表示上面提到的width:100%的元素,需要在IE6下看效果。



当灰色的框的高度大于iframe的高度时出现纵横向滚动条(IE6下)。




当灰色的框的高度小于iframe的高度时效果正常。




解决方案一:给内页加上样式:html { overflow-y: scroll; }
当灰色的框的高度大于iframe的高度时仅出现纵向滚动条,效果正确。




当灰色的框的高度小于iframe的高度时纵向滚动条仍然显示(不可用状态),有瑕疵。




解决方案二:给内页加上样式:html { overflow-x: hidden; overflow-y: auto; }
当灰色的框的高度大于iframe的高度时仅出现纵向滚动条,但右边内容显示不完全(PS:里面文字内容是“这是个高为200px的div”),效果不正确。




当灰色的框的高度小于iframe的高度时没有滚动条出现,效果正确。





解决方案三:经过了多次尝试仍然没有发现纯css的完美解决方案,而我们追求的是最完美的效果。


既然纯css解决不 了,我们只好搬出js来了,通过前面的测试我们发现灰色框高度小于iframe的高度时不需要做任何处理效果正确,而灰色框高度大于iframe的高度时 方案一是完美的。


于是,我们的js有如下思路:当浏览器为IE6且内容高度比iframe高时给html标签加入方案一的样式。


下面是jQuery的代 码:(不用jQuery的话思路一样。




复制代码代码如下:
$(function(){
if($.browser.msie&&$.browser.version=="6.0"&&$("html")[0].scrollHeight>$("html").height()) $("html").css("overflowY","scroll");
});

当灰色的框的高度大于iframe的高度时仅出现纵向滚动条,效果正确。



当灰色的框的高度小于iframe的高度时效果正确。



学会开心每一天(:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/620495.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-15
下一篇 2022-04-15

发表评论

登录后才能评论

评论列表(0条)

保存