深圳金猫标语
网站首页 > 建站百科 > 网站建设 > hasLayout—IE浏览器css bug


hasLayout—IE浏览器css bug

来源: 金猫数据   点击次数:  更新时间:2013-09-01
what 是hasLayout?hasLayout是IE特有的一个属性。很多的ie下的css bug都与其息息相关。在ie中,一个元素要么自己对自身的内容进行计算大小和组织,要么依赖于父元素来计算尺寸和组织内容。当一个元素的hasLayout属性值为true时,它负责对自己和可能的子孙元素进行尺寸计算和定位。虽然这意味着这个元素需要花更多的代价来维护自身和里面的内容,而不是依赖于祖先元素来完成这些工作。 

比如常见的hasLayout height{ with:999px}   _height{ with:999px}  只有IE6才会认别加 下滑线的_height{ with:999px}  其它浏览器都不认识这个标志  


下列元素默认 hasLayout=true 
<table> <td> <body> <img> <hr> <input> <select> <textarea> <button> <iframe> <embed> <object> <applet> <marquee> 
很多情况下,我们把 hasLayout的状态改成true 就可以解决很大部分ie下显示的bug。 
hasLayout属性不能直接设定,你只能通过设定一些特定的css属性来触发并改变 hasLayout 状态。下面列出可以触发hasLayout的一些CSS属性值。 

常见的IE下hasLayout属性


display 
启动haslayout的值:inline-block 
取消hasLayout的值:其他值 

width/height 
启动hasLayout的值:除了auto以外的值 
取消hasLayout的值:auto 

position 
启动hasLayout的值:absolute 
取消hasLayout的值:static 

float 
启动hasLayout的值:left或right 
取消hasLayout的值:none 

zoom 
启动hasLayout的值:有值 
取消hasLayout的值:narmal或者空值 
(zoom是微软IE专有属性,可以触发hasLayout但不会影响页面的显示效果。zoom: 1常用来除错,不过 ie 5 对这个属性不支持。)

writing-mode: tb-rl 
这也是微软专有的属性。 
ie7还有一些额外的属性可以触发该属性(不完全列表): 
min-height: (任何值) 
max-height: (任何值除了none) 
min-width: (任何值) 
max-width: (任何值除了none) 
overflow: (任何值除了visible) 
overflow-x: (任何值除了visible) 
overflow-y: (任何值除了visible)5 
position: fixed 


hasLayout是微软专有的东西,对firefox等比较遵守标准的浏览器就无效了,因此不可太过依赖。

更多

上一篇:CSS+DIV建站浏览器兼容性问题及解决方法
下一篇:DEDE模板文件不存在,无法解析文档

建站百科
最新上线网站
最新动态
官方微博
联系方式
电 话:13715363967
邮 箱:jm3q@jm3q.com
网 址:www.jm3q.com
地 址:深圳市龙华区龙华街道油松科技大厦B栋419

客户服务
售前咨询
QQ:376797323
网站备案
QQ:362226714
技术支持
QQ:2303230985
投诉建议
QQ:479277584
电话咨询
0755-83958156
周一至周五
9:00至18:00点
微客服
扫一扫
回到顶部