EDIT: Dies geschieht nur in IE8, es funktioniert gut in IE7, Firefox, Opera usw.
Zuallererst, hier ist ein Bild, das ich in Photoshop gemacht habe, um mein Problem zu demonstrieren: Ссылка
Jetzt sollten Sie eine Vorstellung von meinem Problem haben. Hier ist eine vereinfachte Version des Markups, das ich verwende (ich habe den meisten irrelevanten Inhalt weggelassen):
%Vor%Und CSS-Stile gehen so:
%Vor%Offensichtlich habe ich alle unrealistischen Stile wie Ränder, Hintergrundfarben und Bilder, Schriftgrößen usw. weggelassen. Ich habe nur wichtige Sachen behalten.
Irgendeine Idee, wo könnte das Problem sein?
Ich denke, das ist ein IE8-Bug. Bezieht sich auf ein Geschwisterelement eines floated linken und rechten div. Mit oder ohne ein Clearing-Div verliert das endgültige nicht gefloatete Element seinen oberen Rand in IE8.
Wir haben das getestet und nur IE8 hat es falsch verstanden:
Wir haben auch drei Lösungen entwickelt.
enter code here
Versuchen Sie, einen Container mit einer Breite mit Überlauf zu verwenden: Versteckt die flotierten Divs und entfernen Sie das gelöschte div.
Und das CSS
%Vor%(Entschuldigung, ich habe IE7 auf meiner Arbeitsmaschine zum Testen gelassen, damit ich das nicht überprüfen kann)
Ich habe ähnliche Probleme, und die von Matt Bradley bereitgestellten Lösungen funktionierten nicht für mich (aber danke, dass du es trotzdem gepostet hast!). Ich wollte Rand oben haben: 10px auf einem h1 Element.
Die Lösung, die ich gefunden habe, besteht darin, Position: relativ, oben: 10px und Rand oben: 0px zum h1-Element hinzuzufügen.
Ich habe IE8 nicht bei mir ... aber hast du versucht, klar zu sagen: sowohl zum unteren Div als auch zum Hinzufügen eines unteren Randes zu einem der oberen Floats? Ich bin mir ziemlich sicher, dass dies den gleichen Effekt ohne zusätzliche Divs erreichen würde.
Tags und Links html internet-explorer css margin xhtml