Показать сообщение отдельно
  #1 (permalink)  
Старый 14.02.2011, 21:51
Интересующийся
Отправить личное сообщение для gh321 Посмотреть профиль Найти все сообщения от gh321
 
Регистрация: 14.02.2011
Сообщений: 23

В IE не меняется высота дива
Есть небольшой скрипт который меняет(уравнивает) высоты дива в зависимости от количества текста, не работает в IE8 (в режиме совместимости и в IE7).
Алерт выводит новое/полученную высоту но визуально высота дива не меняется (остается та которая задана в CSS)
window.onload = function(){

        var sidebar = document.getElementById("sidebar").offsetHeight;

        var txt = document.getElementById("text_div").offsetHeight;

        if(sidebar<965&&txt<965)return;

        if(sidebar>txt){

         document.getElementById('text_div').style.height = (sidebar-20)+'px';

         alert('text_div = '+document.getElementById('text_div').style.height);
          }
            else if(sidebar<txt){

            document.getElementById('sidebar').style.height = (txt-20)+'px';

            alert('sidebar = '+document.getElementById('sidebar').style.height);
         }
}


Возможно дело в CSS
Код:
#sidebar { 
           min-height: 964px;
           height: auto;
           float:left;
           width:231px;
           ...
   }
#sidebar p { font-size:14px;
             padding:0 10px;}

#text_div {           
           
           min-height: 964px;
           height: auto;

           margin:0px 0px 0 251px;
           width:auto;
           vertical-align:top;

           padding:10px 20px 10px 20px;
           }
В FF и Opera скрипт работает.
Ответить с цитированием