Menyasarkan IE7 dan IE8 dengan CSS Sah
Menyasarkan versi IE tertentu dengan CSS boleh mencabar, kerana menggunakan pembetulan untuk satu versi mungkin tidak berfungsi untuk yang lain. Panduan ini menggariskan dua kaedah untuk menyasarkan IE7 dan IE8 dengan CSS yang sah: menggunakan HTML dan CSS tanpa penggodaman dan menggunakan "godam" CSS.
Penyasaran Eksplisit tanpa Penggodaman
Untuk mengelak daripada menggunakan penggodaman, tambahkan kelas pelayar yang unik pada elemen dan pilih berdasarkan pelayar kemudian. Contohnya:
<code class="html"><!doctype html> <!--[if IE]><![endif]--> <!--[if lt IE 7 ]> <html lang="en" class="ie6"> <![endif]--> <!--[if IE 7 ]> <html lang="en" class="ie7"> <![endif]--> <!--[if IE 8 ]> <html lang="en" class="ie8"> <![endif]--> <!--[if IE 9 ]> <html lang="en" class="ie9"> <![endif]--> <!--[if (gt IE 9)|!(IE)]><!--><html lang="en"><!--<![endif]--></code>
Kemudian, gunakan penyasaran CSS secara khusus pada versi penyemak imbas yang dikehendaki:
<code class="css">.ie6 body { border:1px solid red; } .ie7 body { border:1px solid blue; }</code>
Penyasaran dengan Hack CSS
Kepada versi IE sasaran menggunakan penggodaman, gunakan aksara berikut:
Contoh:
<code class="css">body { border:1px solid red; /* standard */ border:1px solid blue; /* IE8 and below */ *border:1px solid orange; /* IE7 and below */ _border:1px solid blue; /* IE6 */ }</code>
Penyasaran IE10
IE10 tidak mengenali pernyataan bersyarat, jadi tambahkan "ie10 " kelas ke elemen menggunakan:
<code class="html"><!doctype html> <html lang="en"> <!--[if !IE]><!--><script>if (/*@cc_on!@*/false) {document.documentElement.className+=' ie10';}</script><!--<![endif]--> <head></head> <body></body> </html></code>
Atas ialah kandungan terperinci Bagaimanakah saya boleh menyasarkan IE7 dan IE8 dengan CSS yang sah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!