I have seen people apply the CSS property zoom: 1;
on HTML elements.
Why do they do this, and what bug does it fix?
This provides an internal property known as hasLayout
in Internet Explorer versions 7 and lower.
The definitive article on the subject is here: http://www.satzansatz.de/cssd/onhavinglayout.html
A lot of Internet Explorer's rendering inconsistencies can be fixed by giving an element “layout.” In this article, the authors focus on some aspects of this complicated matter.
“Layout” is an IE/Win proprietary concept that determines how elements draw and bound their content, interact with and relate to other elements, and react on and transmit application/user events.
For an example of a specific bug that zoom: 1
(and so hasLayout
) helps to fix:
Inline block doesn't work in internet explorer 7, 6