hasLayout
свойство
Это грязный хак, используемый для установки свойства hasLayout
элемента IE в true. Свойство hasLayout
«определяет, как элементы рисуют и связывают свое содержимое, взаимодействуют с другими элементами и связываются с ними, а также реагируют и передают события приложения / пользователя». Предоставление элемента layout
- это простой способ исправить многие ошибки, связанные с макетом, которые появляются в Internet Explorer.
Что с 99,9%?
Установка ширины на 99,9% - один из способов ее запуска. Причина, по которой вы будете использовать 99,9%, заключается в том, что макет задается элементу, если для его width
установлено значение, отличное от auto
. Установка в процентах исключает необходимость использования фиксированной ширины.
После некоторого тестирования в jsFiddle я пришел к выводу, что действительно нет необходимости использовать ширину 99,9%, использование ширины 100% столь же эффективно. http://jsfiddle.net/3qfjW/2/ (только для IE). Кажется, что установка width
на 99,9%, возможно, была распространенным заблуждением , которое застряло .. Распространите слово people.
Другие методы
Вы также можете вызвать hasLayout
, используя zoom: 1;
Хотя этот метод является предпочтительным для многих, так как он не мешает другим элементам, связанным со стилем, он также является недопустимым кодом CSS, который не является опцией использовать для некоторых разработчиков.
Дальнейшее чтение
Чтобы узнать больше методов для запуска hasLayout
, проверьте: http://www.satzansatz.de/cssd/onhavinglayout.html
Дополнительную информацию о свойстве hasLayout
можно найти в статье MSDN по hasLayout
http://msdn.microsoft.com/en-us/library/bb250481(VS.85).aspx (на самом деле это отличное чтение, много подробной информации)