2010-12-14 9 views
0

Ich weiß, wenn der Hintergrund Ihrer Elemente nicht hinter seinem gesamten Inhalt steht (zB: wegen floated Elementen, positionierten Elementen, Rand), fügt das Hinzufügen overflow:hidden das Problem ein und zwingt den Hintergrund, hinter diesen Elementen zu erscheinen.Bitte erklären Sie Überlauf: versteckte Wirkung auf Hintergründe?

Zum Beispiel siehe this question und Meders Antwort.

Wenn Sie dies tun, wird jedoch kein überlaufender Inhalt ausgeblendet. Wie kann dieser Effekt also überhaupt eingestellt werden?

Grundsätzlich weiß ich, es funktioniert, aber ich möchte verstehen, warum?

Antwort

2

Es erstellt einen neuen Block Formatierungskontext, der die Floats löscht.

http://www.w3.org/TR/CSS2/visuren.html#block-formatting

Und .. es tut Clip überquellenden Inhalt: http://jsfiddle.net/rDmhn/

+2

Ich denke, der Punkt des OP Clipping bezüglich war, dass er nur bewusst 'Überlauf war: hidden' die Clipping-Effekte und war neugierig, warum es überhaupt etwas bewirken würde, wenn es nichts zu schneiden gäbe. – Matchu

+0

@Matchu du hast absolut recht. Der erste Teil der Antwort beantwortet noch immer meine Frage, ich meine, er hat meine Frage beantwortet, aber es fällt mir immer noch schwer, meinen Kopf darum zu wickeln. –

+0

@John: Oh ja, es ist immer noch die richtige Antwort :) Ich habe nur geklärt, warum das zweite Bit nicht wirklich notwendig war. Vergessen Sie nicht, auf das Häkchen zu klicken, wenn Sie der Meinung sind, dass dies Ihre Frage zufriedenstellend beantwortet: D – Matchu

Verwandte Themen