it-swarm.com.ru

Абсолютное положение и переполнение скрыто

У нас есть два DIV, один встроен в другой. Если внешний DIV не позиционируется как абсолютный, то внутренний DIV, который позиционируется как абсолютный, не подчиняется переполнению, скрытому от внешнего DIV ( пример ).

Есть ли шанс заставить внутренний DIV подчиняться переполнению, скрытому от внешнего DIV, не устанавливая внешний DIV в абсолютное положение (причина, которая испортит наш полный макет)? Также относительное положение для нашего внутреннего DIV не вариант, так как нам нужно "вырасти" из таблицы TD ( exmple ).

Есть ли другие варианты?

110
Zardoz

Сделать внешний <div> в position: relative и внутренний <div> в position: absolute. Это должно работать для вас.

246
shankhan

Как насчет position: relative для внешнего div? В примере, который скрывает внутренний. Он также не будет перемещать его в макете, так как вы не указываете верхнюю или левую.

24
Tesserex

Абсолютно позиционированный элемент фактически позиционируется относительно relative родителя или ближайшего найденного относительного родителя. Таким образом, элемент с overflow: hidden должен находиться между позиционированными элементами relative и absolute:

<div class="relative-parent">
  <div class="hiding-parent">
    <div class="child"></div>
  </div>
</div>

.relative-parent {
  position:relative;
}
.hiding-parent {
  overflow:hidden;
}
.child {
  position:absolute; 
}
4
Si7ius