郭兵个人网站

自古人无死,人无信不立

« domain status域名状态解析 MIME设置功能后缀名设置 »

IE6隐藏frame页面横向滚动条

最近做的一个frame页面,一直有横向滚动条的困扰,怎么改样式宽度都去不掉,实在是头疼,无奈只好请教google老师,一查,原来这是IE6一个BUG——“在用IE6浏览有框架的xhtml页面的时候,默认会水平和垂直滚动条会一起出现,出现的原因是其对XHTML 1.0 transitional doctype的解释缺陷”。

还查出了3种解决方案:

方法1:
代码:
html { overflow-y: scroll; } 
原理:强制显示ie的垂直滚动条,而忽略水平滚动条
优点:完全解决了这个问题, 允许你保持完整的XHTML doctype. 
缺点:即使页面不需要垂直滚动条的时候也会出现垂直滚动条。

方法2:
代码:
html { overflow-x: hidden; overflow-y: auto; } 
原理:隐藏横向滚动,垂直滚动根据内容自适应
优点:在视觉上解决了这个问题.在不必要的时候, 未强制垂直滚动条出现.
缺点:只是隐藏了水平滚动条,如果页面真正需要水平滚动条的时候,
屏幕以外的内容会因为用户无法水平滚动,而看不到。

方法3:
代码:
body { margin-right: -15px; margin-bottom: -15px; } 
原理:这会在margin的水平和垂直方向上添加一个负值, IE添加了该精确数值后, 便会去除对滚动条的需求假象.
优点:在视觉上解决了这个问题.,垂直滚动根据内容自适应
缺点:由于"人为创建"了15px的外边距(margin), 所以无法使用该填充过的屏幕区域. 
 

  • 相关文章:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Powered By Z-Blog 1.8 Devo Build 80201  Theme By Bokezhuti.cn

Copyright www.guobing.com Your WebSite. Rights Reserved.
冀ICP备06002790号