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

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

Основная проблема в том, что из-за fancybox (по-моему мнению) что-то происходит с высотой.
http://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-колоночный макет. Кстати из "специалиста".
Оценить: + | 0 Комментировать
Раздел: Помощь    
Теги:
Просмотров: 652

Комментарии (4):

+1
[Olga] [29 сентября 10:53]
Увидела баг только на страницах с фотографиями. Скрипт рабочий, высота высчитывается, только высчитывается до загрузки картинок, картинки загружаясь удлиняют центральный блок, а высота в левой колонке уже не пересчитывается.
А почему не устранить данный баг с помощью верстки, прописав
#center_content background: url("/i/left_bottom.gif") 0 0 repeat-y ; и в футере тоже прописать данный фон, убрать левый margin и изменить padding: 23px 0 11px 257px; bottom:-92px;
0
Ромка [Lemaro] [29 сентября 11:12]
Супер, отличный вариант, просто я зациклился на JQuery и пробовал менять и так и так код чтобы колонка удлинилась, в итоге оказалось все слишком просто, спасибо Ольга.
0
Григорий Кочнев [Greg] [29 сентября 11:00]
По поводу debarsstroy.ru делается все очень просто. Не нужно ничего там высчитывать никакими скиптами.
Вкладываете левую и правую колонку в блок(родительский), этому блоку задаёте БГ для левой колонки. В результате получается, что какая бы колонка не была бы большой, она потянет родителя, а он соответственно фон.

<div class="родитель">

<div class="левая колонка"></div>

<div class="правая колонка"></div>

<div class="clear"></div>

</div>

.clear {clear:both;}
0
Андрей Данилов [Deff] [29 сентября 22:23]
и, чтобы совсем была полной картина: левой колонке задаём БГ и упираем его вправо. правой колонке задаём БГ и упираем его влево. готово. да, кстати, чтобы фоны накладывались друг на друга, задаём правой колонке отрицательный левый марджин, равный ширине БГ. не забываем об удвоении марджинов в ие6.

Написать комментарий

Комментарии к статье может оставить только зарегистрированный пользователь.


Вы можете также оставлять комментарии, авторизовавшись в одной из социальных сетей: