Kerana IE mempunyai pepijat dalam mengenali !penting, dan kini kebanyakan pereka bentuk standard web menggunakan pepijat ini untuk menjadikannya serasi dengan IE dan FF, tetapi IE7.0 telah membetulkan pepijat ini, jadi masalah telah timbul semula, bagaimana untuk menjadikannya serasi dengan IE.7.0 Pada masa yang sama, adakah ia serasi dengan ie6.0 dan ff Seperti kata pepatah, "Ada dasar dari atas dan tindakan balas dari bawah Pereka bentuk standard halaman web asing menggunakan penapis css (bukan css hack). serasi dengan ie7.0, ie6.0 dan ff, berikut ialah terjemahan saya dari tapak web asing
Buat gaya css baharu seperti berikut:
#item {
lebar: 200px;
tinggi: 200px;
latar belakang :; Tambahkan atribut lang di sini, iaitu zh dalam bahasa Cina:
Sekarang tentukan gaya lain untuk elemen div:
*:lang(en) #item{
latar belakang:hijau !important;
}
Ini dilakukan untuk menulis ganti gaya css asal dengan !important. Oleh kerana pemilih :lang ie7.0 tidak menyokongnya, ayat ini tidak akan digunakan Sebarang kesan, jadi kesan yang sama di bawah ie6.0 dicapai, tetapi malangnya, Safari tidak menyokong atribut ini, jadi gaya css berikut perlu ditambahkan:
#item:kosong {
latar belakang: hijau !penting
}
: Pemilih kosong ialah spesifikasi css3. Walaupun Safari tidak menyokong ini spesifikasi, elemen ini masih akan dipilih tanpa mengira sama ada elemen ini wujud sekarang Ia akan berfungsi pada penyemak imbas selain daripada versi iaitu, dan akan lulus ujian di bawah penyemak imbas dan sistem pengendalian berikut:
ie7. pratonton beta 2/menang
iaitu5.01+/menang
firefox 1.5/menang
opera 8.5/menang & linux
netscape 7.01, 8/menang
mozilla 1.7.12/menang & linux
safari 2/mac
firefox 1.0.4/linux
epiphany 1.4.8/linux
galeon 1.3.20/linux
Menurut penulis, ini sebenarnya bukan hack, ia sepatutnya menjadi penapis, tetapi ini nampaknya bukan yang paling penting, kerana melalui kaedah ini, kami telah sekali lagi menyelesaikan masalah keserasian antara IE6.0, IE7.0 dan pelayar lain, dan kaedah penggunaan: lang-filter akan berguna pada masa hadapan.