2011-01-05 53 views
87

Wir haben zwei DIVs, eines in das andere eingebettet. Wenn der äußere DIV nicht absolut positioniert ist, dann folgt der innere DIV, der absolut positioniert ist, nicht dem Überlauf, der von dem äußeren DIV verborgen ist (example).Position absolut und Überlauf versteckt

Gibt es eine Chance, dass der innere DIV dem Überlauf des äußeren DIV gehorcht, ohne den äußeren DIV auf absolute Position zu setzen (weil das unser komplettes Layout verdirbt)? Auch relative Position für unseren inneren DIV ist keine Option, da wir aus einer Tabelle TD (exmple) "herauswachsen" müssen.

Gibt es noch andere Optionen?

Antwort

207

Äußere <div> zu position: relative und innere <div> zu position: absolute machen. Es sollte für Sie arbeiten.

+3

Dank an Sie beide. Ich dachte immer Position: Relativ ist die Standardeinstellung. Ich habe gerade gelernt, dass statische Voreinstellung ist. Ich akzeptiere die Antwort von shankhans, da beide Antworten gleichwertig sind und shankhan einige weitere Punkte benötigt ;-) – Zardoz

+0

@Zardoz: Danke – shankhan

+9

Du NINJA, du. –

21

Was ist mit position: relative für die äußere div? In dem Beispiel, das den inneren verbirgt. Es wird es auch nicht in seinem Layout verschieben, da Sie weder oben noch links angeben.

-4

Sie machen nur div s wie folgt aus:

<div style="width:100px; height: 100px; border:1px solid; overflow:hidden; "> 
    <br/> 
    <div style="position:inherit; width: 200px; height:200px; background:yellow;"> 
     <br/> 
     <div style="position:absolute; width: 500px; height:50px; background:Pink; z-index: 99;"> 
      <br/> 
     </div> 
    </div> 
</div> 

ich diesen Code hoffen, dass Sie helfen :)

Verwandte Themen