#css
#css
Вопрос:
У меня есть два сложенных div, содержащих дочерние элементы, и я хочу, чтобы, если я установил видимость скрытой для первого div, она должна исчезнуть, а второй div под первым должен занять место первого div, сохраняя положение дочерних элементов внутри второго div.
вот код.
<div id="wrapper">
<div id="first" style="top:10px; width:400px; border-style:solid;border-width:1px;">
A quick brown fox jumps over the lazy dog..................
</div>
<div id="second" style="top:100px;width:400px; border-style:solid; border-width:1px;">
<div id="child1" style="margin-left:250px">
21st, October 2011
</div>
</div>
<div>
Ответ №1:
Используйте display:none
вместо visibility:hidden
Ответ №2:
CSS visibility: hidden;
только скроет элемент, он все равно зарезервирует для него место в потоке документов.
То, что вы хотите display: none;
, это то, что полностью удалит элемент.
Пример, закодированный здесь. (щелкните #second
div для активации.
Комментарии:
1. понял, но моя главная проблема заключается в том, что если я определяю верхнюю позицию первого div, я хочу, чтобы вторая отображалась под первой, не упоминая верхнюю, и когда я устанавливаю значение display none в значение first, вторая занимает точное положение первого, включая дочерние элементы second. Можете ли вы дать мне код, чтобы я мог проверить в fiddler.
Ответ №3:
Если вы сделаете что-то вроде этого:
<div id="wrapper" style="width:400px;">
<div id="first" style="display:none;top:10px; border-style:solid;border-width:1px;">
A quick brown fox jumps over the lazy dog..................
</div>
<div id="second" style="border-style:solid; border-width:1px;">
<div id="child1" style="margin-left:250px">
21st, October 2011
</div>
</div>
</div>
если поместить wrapper
оба объекта вокруг, то второй div
переместится на позицию первого div
, если первый div
скрыт.
Комментарии:
1. спасибо, Исаак и Кайл .. жаль, что я не выбрал оба ответа 🙂
2. Прохладный. Эй, забудьте
top
значение, используйтеmargin-top
, если хотите, чтобы там был пробел. Вам не нужно возиться с абсолютным позиционированием в таком простом случае, как этот.