Heim >Web-Frontend >CSS-Tutorial >So verwenden Sie :nth-child in Internet Explorer 8: Eine Problemumgehung

So verwenden Sie :nth-child in Internet Explorer 8: Eine Problemumgehung

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-12 05:03:02555Durchsuche

How to Use :nth-child in Internet Explorer 8: A Workaround

IE8 :nth-child und :before: A Fix

Internet Explorer 8 ist berüchtigt für seine Inkonsistenzen mit modernen Webstandards. Ein häufiges Problem, mit dem Entwickler konfrontiert sind, ist die mangelnde Unterstützung für den CSS-Selektor für das n-te Kind.

Das Problem

Bedenken Sie den folgenden CSS-Code:

#nav-primary ul li:nth-child(1) a:after { }

Während dieser Code in den meisten modernen Browsern einwandfrei funktioniert, schlägt er im Internet Explorer 8 auf mysteriöse Weise fehl.

Die Lösung

Trotz der Herausforderungen, die IE8 mit sich bringt ist eine Problemumgehung zur Simulation der :nth-child-Funktionalität. Durch die Nutzung des benachbarten Geschwisterkombinators ( ) können Sie auf bestimmte Elemente in einer Sequenz abzielen:

#nav-primary ul li:first-child a {
    border-top: 5px solid red;
}
#nav-primary ul li:first-child + li a {
    border-top: 5px solid blue;
}
#nav-primary ul li:first-child + li + li a {
    border-top: 5px solid green;
}

Mit diesem Ansatz können Sie grundlegende Variationen von :nth-child emulieren. Komplexere Variationen wie :nth-child(odd) oder :nth-child(4n 3) können jedoch mit dieser Methode nicht repliziert werden.

Hinweis: Diese Problemumgehung behebt zwar das Problem von Durch das Anwenden von Stilen auf bestimmte Elemente in einer Sequenz wird das Verhalten von :nth-child möglicherweise nicht vollständig reproduziert und kann in komplexeren Szenarien zu unbeabsichtigten Konsequenzen führen.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie :nth-child in Internet Explorer 8: Eine Problemumgehung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn