2016-09-28 6 views
2

Wie kann ich ein DIV anzeigen, das größer ist als sein Vorgänger, wenn der Vorgänger DIV den Stil overflow: hidden; position: relative; hat? HierDIV größer als Eltern mit Überlauf: versteckt; Position: relativ

ein Beispiel:

HTML:

<div class="container"> 
    <div class="content"> 
    __________________________SHOW_ME 
    </div> 
</div> 

CSS:

.container { 
    position: relative; 
    padding: 10px; 
    overflow: hidden; 
    width: 10em; 
    border: 1px solid; 
    height: 50px; 
} 

.content { 
    position: absolute; 
    overflow: visible; 
    border: 5px solid red; 
} 

Hier ist dieses Beispiel auf JS Fiddle.

Ich habe versucht, den Inhalt DIV mit verschiedenen Kombinationen von position: absolute, overflow: visible, right: -100px Styling, aber es hat nicht geholfen.

Wie kann ich den Inhalt div so gestalten, dass er vollständig sichtbar ist? Ich kann das Eltern-DIV nicht mit container Klasse ändern, nur der Inhalt nach innen.

+5

kurze Version: kann man nicht. lange Version: Sie können die Position fixed verwenden, aber dann scrollt der Inhalt div mit dem Bildschirm – Pete

+2

ich denke, dass Sie '.container' irgendwie ändern müssen 'overflow: visible' oder seine Breite –

+0

@Pete danke, Position: behoben würde für mich arbeiten. Würdest du das als Antwort posten? – TMG

Antwort

0

Wenn Sie möchten, dass die Position des Inhalts an den Container gebunden wird, können Sie grundsätzlich nicht JavaScript verwenden, um die Position auf dem Bildlauf zu aktualisieren und die Position des zu fixierenden Inhalts anstelle von absolut festzulegen.

0

Eigentlich können Sie div Inside Element mit overflow:hidden nicht zeigen, aber ich habe eine Lösung für Sie. Sie können Ihre div mit overflow:auto geben, so kann der Benutzer blättern x

Here the example fiddle

+0

danke, aber blättern sieht hässlich aus :-) – TMG

+0

Die beste Lösung ist die Änderung der 'Überlauf: versteckt;' in Ihrem '.container Warum machst du das nicht? –

0

.container { 
 
    position: relative; 
 
    padding: 10px; 
 
    overflow: hidden; 
 
    width: auto; 
 
    border: 1px solid; 
 
    height: 50px; 
 
} 
 

 
.content { 
 
    position: absolute; 
 
    overflow: auto; 
 
    border: 5px solid red; 
 
    width: auto; 
 
    padding: 10px; 
 
}
<div class="container"> 
 
    <div class="content"> 
 
     __________________________SHOW_ME 
 
    </div> 
 
</div>

+0

Das beantwortet meine Frage nicht. Ich wollte den Text nicht umschließen, um ihn in das Eltern-Div-Element zu drücken, sondern ihn bei Bedarf darüber hinaus erweitern zu lassen. – TMG

+0

@TMG jetzt überprüfen Sie es – Dhaarani

Verwandte Themen