2013-08-14 5 views
0

Я иногда путаюсь с divs, когда я пытаюсь построить немного более сложную компоновку, чем обычно.Позиция и высота DIV

Я сделал быстрый пример, показывающий, что моя текущая проблема заключается в:

EDIT: ОБНОВЛЕНО jsFIDDLE К сожалению, это немного сумбурно, но я просто пытаюсь заставить его работать. Как вы можете видеть, я заставил высоту на одной из вертикальных линий (но это нормально, эта линия должна быть фиксированной высотой). Вертикальная линия у меня есть проблемы с это один между «картинки для загрузки» и «видео для загрузки»

http://jsfiddle.net/GLjND/

<div id="wrapper"> 
    <div id="first"></div> 
    <div id="second"></div> 
    <div id="third"></div> 
</div> 

У меня есть много Див, и я предполагаю, что моя проблема лежит в какой-то из родителей где-то , но я не могу понять это.

В принципе у меня есть обертка, и у меня есть 2 области контента. В этом примере они являются «первыми» и «третьими». «Вторая» - это вертикальная пунктирная линия, которую я хочу придерживаться между ними в областях, а высота этого div (которая содержит вертикальное пунктирное изображение с повторением-y) должна соответствовать высоте обертки, которая в поворот определяется самым большим из двух других div («первый» и «третий»).

Как мне это сделать?

Заранее благодарен! :)

ответ

2

Здесь вы идете. http://jsfiddle.net/GLjND/3/ (желтый фон просто так вы можете увидеть новый DIV)

Просто дайте дивы

display: table-cell 

и вы сделали.

+0

стол-клетка разрушает мой макет. Я попытаюсь очистить свой фактический код и разместить его здесь, чтобы вы лучше поняли, что я хочу.) –

+0

Да, извините. Конечно, я публикую его в jsfiddle :) –

+0

Спасибо, но он не работает. Как вы можете видеть, обертка теперь способ большой (высокий). Кроме того, он не работает на вертикальной линии между разделами «картинки, доступные для загрузки» и «видео, доступными для загрузки». Есть идеи? –

0

Вот она - fiddle

<div id="wrapper"> 
    <div id="first"></div> 
    <div id="second"></div> 
    <div id="third"></div> 
</div> 

body{ 
    padding:0; 
    margin:0; 
} 

#wrapper{ 
    width:500px; 
    height:auto; 
    background:red; 
} 

#first{ 
    display: table-cell; 
    width:230px; 
    height:300px; 
    background:blue; 
} 

#second{ 
    display: table-cell; 
    background:white; 
    border-left: thick dotted #ff0000; 
} 

#third{ 
    display: table-cell; 
    width:270px; 
    height:350px; 
    background:green; 
} 
0

При использовании поплавка свойства, я рекомендую вам установить переполнение: скрытый в родительском DIV

#wrapper{ 
    overflow:hidden; 
} 

И для # Секунды у установил высота до 100%, для этого для работы u необходимо зафиксировать высоту для родительского div

#wrapper{ 
    height:400px; 
} 

Вот Jsfiddle Надеюсь, что это будет хорошим решением и станет более информативным

+0

Спасибо, но родитель может иметь переменную высоту, в зависимости от того, сколько контента там. –

+0

не так сильно, как я знаю, высота родительского div должна быть исправлена. и, пожалуйста, проголосуйте, если вы найдете это сообщение полезным –

+0

Но это динамическая веб-страница. Там может быть много контента, поэтому родительский div не может быть фиксированной высотой. Он должен быть динамичным, чтобы соответствовать количеству контента на странице. –

0

Просто дайте свойство CSS:

overflow : hidden 
display : table-cell 
Смежные вопросы