Как сделать так, чтобы относительная позиция div расширялась и содержала в ней все абсолютные позиции div? - PullRequest
1 голос
/ 25 апреля 2009

скажи, что у меня что-то вроде

<body><div id="a"><div id="b">some content</div></div>more content<body>

и я не знаю, какой будет высота "некоторого контента". Но у меня #b стилизовано под position: absolute и #a стилизовано под position: относительное, поэтому позиция # b относительно верхнего левого угла #a. Есть ли какой-нибудь способ, которым я могу сделать расширение #a таким, чтобы оно содержало #b, после которого «больше контента» выдвигается?

спасибо

Ответы [ 4 ]

2 голосов
/ 04 июня 2012

Замена абсолютного на относительный может дать вам то, что вы хотите, как в этом jsFiddle .

2 голосов
/ 25 апреля 2009

Ваш пример некорректен, так как на самом деле нет необходимости иметь pos: abs на div # b, так как по умолчанию этот элемент будет установлен в верхней / левой части div # a.

Использование css position выведет примененный элемент за пределы обычного потока разметки, даже если вы используете pos: rel для div # b, это только увеличит высоту div # a, что не будет учитывать любое позиционирование вас. возможно, также применяется к нему.

Есть способ, которым вы могли бы достичь того, что вы хотите, но это зависит от использования JavaScript.

1 голос
/ 25 апреля 2009

Похоже, что положение относительно #b может быть лучшим решением.

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

Также, скажем, вы хотите нажать #b на 30px, затем вы установите

#b{position:relative;top:30px;margin-bottom:30px;}

Контент очистит нижнюю часть #b, потому что position: относительный оставляет блок в потоке контента, равный высоте #b + 30px;

0 голосов
/ 25 апреля 2009

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...