2011-12-31 1 views
4

Согласование нижней части B с нижней частью A возможно, если DIVs не имеют отношения родитель/ребенок?Выровнять DIV до дна несвязанного DIV с CSS (без отношения родитель/ребенок)

Высота обоих А и В изменяется в зависимости от того, какая страница просматривается, поэтому я не верю, что смогу это сделать с заполнением/полями/независимо.

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

What I have:    What I want: 
[ nav bar ]   [ nav bar ] 
--------- -----   --------- 
|  | | B |   |  | 
| A | -----   | A | 
|  |    |  | ----- 
|  |    |  | | B | 
---------    --------- ----- 
    ----------    ---------- 
    | content|    | content| 

Я большое время CSS Newb и я хакерство вокруг с Wordpress, чтобы заставить его делать то, что я хочу. Любая помощь будет оценена по достоинству.

Спасибо!

страница Я работаю над здесь:

http://rachelhappen.com/the-charlie-baker-sneaker/

ответ

2

Я понимаю, что вы пытаетесь сделать. Я бы предложил разместить родительский div вокруг A и B, который является относительным положением, и абсолютно позиционирует B div на дно этого контейнера. Таким образом, он всегда будет придерживаться дна.

Я протестировал следующий код, и он выглядел идеально. Скриншот прилагается к нему.

<style type="text/css"> 

* { margin:0; padding:0; } 
.container { position:relative; width:600px; height:400px; } 
.container .a { background:red; position:absolute; height:400px; width:400px; left:0; } 
.container .b { background:green; position:absolute; height:200px; width:200px; right:0; bottom:0; } 
.cl { clear:both; } 

</style> 

<div class="container"> 
    <div class="a">a</div> 
    <div class="b">b</div> 
</div> 

http://i.stack.imgur.com/6unHw.png

+0

Только примечание ... что * {} ужасная форма в CSS. Я использовал его только для того, чтобы избавиться от полей по умолчанию для браузера и paddings. Проверьте http://html5boilerplate.com/ для сброса CSS, если вы noob;) Все браузеры имеют свойства CSS по умолчанию, назначенные различным HTML-элементам, которые делают ваш код визуально непостоянным. Стили styles.css выравнивают игровое поле для всех больших браузеров. – wwwroth

+0

Да, как насчет посещения [JS Fiddle] (http://jsfiddle.net/), или [JS Bin] (http://jsbin.com/), и показ визуализированного кода * rendered * ..? =) –

+0

Потому что это было бы слишком легко;) .. http: // jsfiddle.net/q6ECD/!! – wwwroth

-1

Основная стратегия, которая приходит на ум:

  • обернуть два в контейнере DIV
  • 'позицию: относительный'
  • объявляют на контейнере, чтобы вызвать «контейнер «свойство на div (не удалось найти реальное имя этого побочного эффекта)
  • Поместите свою боковую панель абсолютно, с« снизу: 0 »
+0

Для моего собственного потомства, если это плохое решение, прокомментируйте почему? Я уже делал шаблоны Wordpress, и OP не говорил, что он может только модифицировать CSS, а не HTML. Это не было для меня данным, но причина в том, что это плохое решение? – Woahdae

1

Уверенный, вот что такое имущество vertical-align.

HTML:

<div id="container"> 
    <div id="a"> 

    </div><div id="b"> 

    </div> 
</div> 

Обратите внимание, что </div><div id="b"> соприкасались. Поскольку эти два элемента являются элементами inline-block, любое пространство в разметке создаст пространство в презентации.

CSS:

#container > div { 
    vertical-align: bottom; 
    width: 100px; 
    display: inline-block; } 
#a { 
    background: red; 
    height: 300px; } 
#b { 
    background: blue; 
    height: 100px; } 

См: http://jsfiddle.net/Wexcode/pbdHj/

+0

Bravo, за исключением идентификаторов стилей;) – wwwroth

+0

@PhillipJamesRoth - Я не понимаю, что вы имеете в виду, нет ничего плохого в стилях ID. http://www.w3.org/TR/CSS2/selector.html#id-selectors – Wex

+0

Я не уверен, как создать контейнер DIV в сообщении Wordpress. Вот страница, над которой я работаю. Я ценю ваше предложение ... http://rachelhappen.com/the-charlie-baker-sneaker/ – amphibious

Смежные вопросы