Проблема с обработкой размеров в FireFox
При написании скрипта появилась необходимость получить размеры объекта на странице.
Размеры получаются через свойства элемента offsetHeight, offsetWidth, позиция через offsetTop, offsetLeft.
Например, возьмем объект - таблица: <table id="asd" style="display: none">
<tr>
<td>Hello World</td>
</tr>
</table>
В скрипте необходимо получить эффективные размеры этой таблицы перед тем, как ее показать. Т.е. при определении размеров таблица является скрытой через свойство стиля display: none. В Internet Explorer'е скрипт работает нормально и правильно. Но при открытии в FireFox обнаружилась проблема: offsetWidth, offsetHeight равны 0 - нулю.
Проблема оказалась в том, что ФайрФокс не возвращает эти свойства, если объект скрыт.
Решилось так: перед тем, как получить эти свойства - объект необходимо показать и лишь потом обращаться к этим свойствам.