Подскажите пожалуйста как можно выравнять колонки по высоте.

На многих страницах background для left_bottom_bar не на всю высоту. Выглядит грустно.

Основная проблема в том, что из-за fancybox (по-моему мнению) что-то происходит с высотой.

https://www.debarsstroy.ru/

Первоначально я взял высоту контент блока плюс футер. Это нужная высота основной части без шапки.

Но слева еще один блок и полоса, их я вычитаю из нужной высоты, чтобы получить конечный результат для блока left_bottom_bar.

Но при нажатии на некоторые ссылки например не работает мой скрипт на JQuery.

$(document).ready(function(){
     $('#left_bottom_bar').each(function(){
             if($(this).height()< $('#right_side_bar').height()){
                   $(this).height($('#right_side_bar').height()-275);}
             else{
                   $(this).height($('#right_side_bar_all').height()-275);}
      });
}); 

Можете посоветовать как исправить баг.

Смотрел способы решения вопроса с помощью javascript, но как-то староваты они. Хотелось бы на JQuery.

Еще, сейчас понимаю, что верстка несовсем правильная, не соблюдается принцип: поменьше указаний высоты и ширины для блоков. Плюс сложный 3-колоночный макет. Кстати из «специалиста».

Оценить:|
  
Комментировать
Раздел: Помощь    
Просмотров: 2480
Комментариев (4)
  1. Greg
    Григорий Кочнев [Greg]
    29.09.2011 в 11:00

    По поводу debarsstroy.ru делается все очень просто. Не нужно ничего там высчитывать никакими скиптами.
    Вкладываете левую и правую колонку в блок(родительский), этому блоку задаёте БГ для левой колонки. В результате получается, что какая бы колонка не была бы большой, она потянет родителя, а он соответственно фон.

    <div class="родитель">
         <div class="левая колонка"></div>
         <div class="правая колонка"></div>
         <div class="clear"></div>
    </div>
    .clear {clear:both;}
  2. Ольга [Olga]
    29.09.2011 в 10:53

    Увидела баг только на страницах с фотографиями. Скрипт рабочий, высота высчитывается, только высчитывается до загрузки картинок, картинки загружаясь удлиняют центральный блок, а высота в левой колонке уже не пересчитывается.
    А почему не устранить данный баг с помощью верстки, прописав
    #center_content background: url(«/i/left_bottom.gif») 0 0 repeat-y ; и в футере тоже прописать данный фон, убрать левый margin и изменить padding: 23px 0 11px 257px; bottom:-92px;

    • Lemaro
      Ромка [Lemaro]
      29.09.2011 в 11:12

      Супер, отличный вариант, просто я зациклился на JQuery и пробовал менять и так и так код чтобы колонка удлинилась, в итоге оказалось все слишком просто, спасибо Ольга.

  3. Deff
    Андрей Данилов [Deff]
    29.09.2011 в 22:23

    и, чтобы совсем была полной картина: левой колонке задаём БГ и упираем его вправо. правой колонке задаём БГ и упираем его влево. готово. да, кстати, чтобы фоны накладывались друг на друга, задаём правой колонке отрицательный левый марджин, равный ширине БГ. не забываем об удвоении марджинов в ие6.

Оставить комментарий