IE zoom:1 原理css
zoom: 1
是为了 IE 早期的浏览器,有 layout 的毛病,因此用 zoom: 1 表明这个 div 是有高度宽度的
效果跟 overflow: hidden 能够装载浮动物件同样html
咱们常常在调试浏览器兼容的过程当中,常常会用到zoom:1。浏览器
_zoom是CSS hack中专对IE6起做用的部分。IE6浏览器会执行zoom:1表示对象的缩放比例,但这里
overflow:hidden;和_zoom:1;是连起来用的,做用是清除border内部浮动。
同理,还可使用一样方法清除margin属性在IE浏览器中的重叠问题。工具
触发IE浏览器的haslayout
解决ie下的浮动,margin重叠等一些问题。 spa
五、检查 IE 下是否触发 haslayout
不少的 IE 下复杂 CSS BUG 都与 IE 特有的 haslayout 息息相关。熟悉和理解 haslayout 对于处理复杂的 CSS BUG 会事半功倍。推荐阅读 old9 翻译的 《On having layout》(若是没法翻越穿越伟大的 GFW,可阅读 蓝色上的转帖 )
快捷提示:若是触发了 haslayout,IE 的调试工具 IE Developer Toolbar 中的属性中将会显示 haslayout 值为 -1翻译
IE 里面的hasLayout调试
你们都知道IE6之支持<a>标签的:hover为了,可是一般在作实际效果的时候<a>标签 :hover在IE6下会失效,code
看代码:orm
[code=”html”]htm
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
http://www.w3.org/1999/xhtml”>
[/code]
在IE6下“颜色”根本就不会变成红色,其余浏览器都是好的,要解决这个问题就必须触发a:hover的layout,例如a:hover { display:inline-block}或者a:hover { zoom:1}等等。