2014-01-16 1 views
0

У нас есть карусельный код вроде этого:CSS: позиция: абсолютная кадрирования внутри не ближайший перелив: скрытый родительский

<div style="width:280px; height:100px; border:1px solid red; overflow:hidden; "> 
    <ul> 
     <li style="position:relative; width:200px; height:50px; list-style-type:none; background:yellow;"> 
      <div style="position:absolute; top:10px; left:10px; width:180px; height:150px; background:Pink; z-index: 99;"> 
       <br/> 
      </div> 
     </li> 
    </ul> 
</div> 

Последнего ДИВ, который позиционируется абсолютным, является обрезка. Есть ли способ сделать это, работает нормально, изменяя только код ccs?

+0

«переполнение: скрыто» в главном div. – radueff

ответ

2

Если вы не хотите, чтобы удалить overflow: hidden, то это нормально для вас, чтобы удалить position:relative для внутренней li и это какой-то новый внешнего DIV и добавить соответствующие верхние и левое значение розового DIV, как показано ниже.

<div style="position:relative"> 
    <div style="width:280px; height: 100px; border:1px solid red; overflow:hidden; "> 
     <ul> 
      <li style="/* removed position:relative; */ width:200px; height:50px; list-style-type:none; background:yellow;z-index: 3;"> 
       <div style="position: absolute; top: 30px; left: 52px; width:180px; height:150px; background:Pink; z-index: 99;"> 
        <br> 
       </div> 
      </li> 
     </ul> 
    </div> 
</div> 

Это единственный способ, которым я мог бы выяснить!

+0

Но после удаления, розовый DIV не расположен на LI. – radueff

+0

Я тоже изменил верхние и левые значения. Вы тоже изменили их? – skshoyeb

+0

А также, чтобы держать его в покое, добавлен дополнительный внешний div! – skshoyeb

1

вы дали overflow:hidden к главному div, который имеет width:280px

и поэтому последняя div с position:absolute становится отрубили.

+0

да точно :) Sry, я ddnt вижу этот ответ! – skshoyeb

+0

Это нормально @skshoyeb Это происходит –

+0

Главный div делает авто по карусельному коду. если я удаляю переполнение: скрытый в основном div, jquery.carousel brokes. – radueff

1
<div style="width:280px; height:100px; border:1px solid red; /* removed overflow:hidden; */ "> 
    <ul> 
     <li style="position:relative; width:200px; height:50px; list-style-type:none; background:yellow;"> 
      <div style="position:absolute; top:10px; left:10px; width:180px; height:150px; background:Pink; z-index: 99;"> 
       <br> 
      </div> 
     </li> 
    </ul> 
</div> 
+0

Я не могу удалить его, потому что это необходимо для сценария карусели. – radueff

+0

Затем увеличьте высоту внешнего div. –

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