Frage

Ich weiß, dass position:fixed; nicht von IE bis IE 7 unterstützt wurde, und es funktioniert nur im Internet Explorer 7, wenn Sie einen STRICT DOCTYPE haben.

Meine Frage ist: „Wie kann ich es mit IE 7 mit TRANSITIONAL DOCTYPE der Arbeit“

Bitte schlagen nicht ein DOCTYPE ändern, da dies meine Frage nicht beantwortet, danke.

War es hilfreich?

Lösung

Sie brauchen keine strenge DOCTYPE für fixed Unterstützung. Sie brauchen nur eine DOCTYPE, die Standards-Modus löst (oder ‚fast Standards‘). Das kann eine Übergang Doctype sein wie zum Beispiel:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

oder XHTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

, solange die System-ID (die URI am Ende) enthalten ist.

Wenn Sie Ihre Seiten wirklich sind unter Berufung auf Quirks-Modus (igitt!), Es tut mir leid, aber Sie können nicht fixed verwenden und JavaScript Hacks greifen müssen (aber dann könnten Sie die für IE6 brauchen sowieso).

Andere Tipps

Feste Position für mich nicht funktioniert auch mit dem Übergangs- / Strenge Doc-Typen. Ich IE9 Jedoch bin mit im Kompatibilitätsmodus ausführen und annimmt, dass unter Verwendung der IE8-Laufzeitbibliotheken zu machen. Um dieses Problem zu beheben, ich hatte die folgenden CSS-Element hinzuzufügen.

.elementToBeFixed {
    position: fixed;
    top: 0;
    left: 0;
}

Es funktioniert nicht mit Top oder Links fehlen wird man muss sich explizit auf Null gesetzt (oder dem gewünschten Wert) für sie in allen Versionen von IE zu arbeiten .... Unnötig zu sagen IE saugt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top