2009-07-28 11 views
2

Ich habe ein div-Element oben auf meiner Seite, das auf Überlauf gesetzt ist: sichtbar. Direkt darunter habe ich den Seiteninhalt.Wie "Überlauf" "löschen": sichtbare Elemente?

Ich möchte nicht die obere div erweitern, aus ästhetischen Gründen, aber ich möchte den Inhalt unten behandeln den Überlauf von oben, wie es ein Blockelement wäre ... durch "Clearing".

Ich weiß über CSS klar ... aber es scheint nicht für Überlauf zu gelten.

Gibt es eine korrekte Methode, dies zu tun?

Antwort

2

Die overflow:visible hat nicht wirklich etwas mit dem Problem zu tun, da es die Standardeinstellung ist.

Legen Sie die Höhe des oberen div fest, und legen Sie ein anderes floating div darin für den Inhalt. Das Floating-Div wird außerhalb des Top-Div erweitert, und Sie können den clear-Stil verwenden, um darunter zu kommen.

+0

lösen, so meinen Sie eigentlich über einen potentialfreien div den Inhalt in den Top div setzen von der Unterseite des oberen div überzulaufen? klingt cool und interessant ... ist das strukturell solide? – johnnietheblack

+0

Ja, ein schwebendes Element hat keinen Einfluss auf die Größe eines übergeordneten Elements, sodass es außerhalb des unteren Elements schweben kann. Es ist üblich, dass Sie ein Clearing-Div verwenden, wenn Sie nicht möchten, dass dies geschieht. Sie benötigen einen korrekten Doctyp auf der Seite, damit der IE die Seite im standardkonformen Modus rendert, oder das übergeordnete Element so erweitert wird, dass es die untergeordneten untergeordneten Elemente enthält. – Guffa

+0

Gibt es hier noch etwas zu beachten? Es funktioniert nicht für mich (Firefox 21, Opera 12.12, Chrome 26). Der "Clear" -Stil ist vom überlaufenden Floating völlig unbeeindruckt. Es ist immer noch am unteren Rand des oberen "Div" platziert. –

0

versuchen

overflow: auto; 

den div erweitern und Ihr Problem

Verwandte Themen