Rumah >hujung hadapan web >tutorial css >Cara Menggunakan :nth-child dalam Internet Explorer 8: Penyelesaian

Cara Menggunakan :nth-child dalam Internet Explorer 8: Penyelesaian

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-12 05:03:02554semak imbas

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

IE8 :nth-child and :before: A Fix

Internet Explorer 8 terkenal kerana ketidakkonsistenannya dengan standard web moden. Isu biasa yang dihadapi oleh pembangun ialah kekurangan sokongan untuk pemilih anak ke-n CSS.

Masalahnya

Pertimbangkan kod CSS berikut:

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

Walaupun kod ini berfungsi dengan sempurna dalam kebanyakan penyemak imbas moden, ia secara misteri gagal dalam Internet Explorer 8.

Penyelesaian

Walaupun terdapat cabaran yang ditimbulkan oleh IE8, terdapat penyelesaian untuk mensimulasikan kefungsian :nth-child. Dengan memanfaatkan gabungan adik beradik bersebelahan ( ), anda boleh menyasarkan elemen tertentu dalam urutan:

#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;
}

Menggunakan pendekatan ini, anda boleh meniru variasi asas :nth-child. Walau bagaimanapun, variasi yang lebih kompleks seperti :nth-child(odd) atau :nth-child(4n 3) tidak boleh direplikasi dengan kaedah ini.

Nota: Walaupun penyelesaian ini menyelesaikan isu menggunakan gaya pada elemen tertentu dalam urutan, ia mungkin tidak meniru sepenuhnya kelakuan :nth-child dan boleh membawa kepada akibat yang tidak diingini dalam lebih kompleks senario.

Atas ialah kandungan terperinci Cara Menggunakan :nth-child dalam Internet Explorer 8: Penyelesaian. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn