Isu biasa bahawa CSS serasi dengan pelbagai penyemak imbas Terdapat tutorial di seluruh Internet. Kandungan berikut adalah ringkasan peribadi 1. CSS HACK
Dua kaedah berikut boleh menyelesaikan hampir semua HACK hari ini
1, !important
Dengan sokongan IE7 untuk !important, kaedah !important kini hanya untuk IE6. HACK. (Perhatikan tulisan. Ingat bahawa kedudukan pengisytiharan perlu lebih awal.)
lebar: 100px!important; */
lebar : 80px; /* IE6 */
}
2, IE6/IE77 untuk FireFox
*+html dan *html ialah teg khusus IE, firefox tidak menyokongnya pada masa ini Dan *+html ialah teg unik untuk IE7
*+html HACK untuk IE7 mesti memastikan pernyataan berikut di bahagian atas HTML:
2. Penutupan apungan sejagat
Untuk prinsip apungan jernih, sila rujuk [Cara Mengosongkan Terapung Tanpa Penanda Struktur]
Tambahkan kod berikut pada CSS Global dan tambah class="clearfix" ke div yang perlu ditutup. Ia berfungsi setiap kali. >kandungan:".";
paparan:blok;
tinggi:0;
keterlihatan:tersembunyi; >display:inline-block;
}
/* Hide from IE Mac * /
.clearfix {display:block;}
/* Tamatkan hide from IE Mac */
/* akhir clearfix */
3 Lain-lain Petua keserasian
1. Menetapkan padding pada div di bawah FF akan menyebabkan lebar dan ketinggian meningkat, tetapi IE tidak. (boleh diselesaikan dengan !important)
2. Masalah tengahan bukan untuk membungkus kandungan.)
2). Jidar tengah mendatar: 0 auto; untuk menetapkan paparan: blok; (biasa dalam teg navigasi)
4 Perbezaan dalam pemahaman BOX antara FF dan IE menghasilkan perbezaan 2px dalam div ditetapkan untuk terapung di bawah IE , Teg ul mempunyai gaya senarai dan padding secara lalai di bawah FF Adalah lebih baik untuk mengisytiharkannya terlebih dahulu untuk mengelakkan masalah yang tidak perlu (Lazim dalam teg navigasi dan senarai kandungan)
6. Sebagai pembungkus luaran, jangan tetapkan. ketinggian div. Adalah lebih baik untuk menambah limpahan: tersembunyi untuk mencapai kebolehsuaian ketinggian
7 Mengenai kursor tangan: penunjuk hanya boleh digunakan untuk IE gaya untuk firefox ie6 ie7
Kini kebanyakannya menggunakan !important untuk menggodam, dan ujian untuk ie6 dan firefox boleh dipaparkan secara normal
Tetapi ie7 boleh mentafsirkan !penting dengan betul, yang akan menyebabkan halaman itu gagal permintaan! Cari pin
Penggodaman yang baik untuk IE7 ialah menggunakan "*+html".
Sekarang tulis CSS seperti ini:
#1 { color: #333; } /* Moz */
* html #1 { color: #666 } /* IE6 */
*+html #1 { color: #999; } /* IE7 */
Kemudian warna fon dipaparkan sebagai #333 di bawah firefox, #666 di bawah IE6 dan #999 di bawah IE7 . 2 Memusatkan isu dalam reka letak css Takrif gaya utama adalah seperti berikut: badan {TEXT-ALIGN: center;} #center {MARGIN-RIGHT: auto; MARGIN -LEFT: auto; } Penjelasan: Tentukan terlebih dahulu TEXT-ALIGN: ini bermakna kandungan dalam elemen induk ditengahkan; Tetapi ia tidak boleh dipusatkan di mozilla. Penyelesaiannya ialah menambah "MARGIN-RIGHT: auto;MARGIN-LEFT: auto; " apabila menetapkan definisi elemen kanak-kanak Perlu diingat bahawa jika anda ingin menggunakan kaedah ini untuk memusatkan keseluruhan halaman, adalah disyorkan untuk tidak untuk Tetapkan dalam DIV, anda boleh membahagi berbilang div dalam urutan Hanya tentukan MARGIN-RIGHT: auto;MARGIN-LEFT: auto;
3 Tafsiran berbeza bagi model kotak
#box{ width:600px; //for ie6.0- width:500px //for ff+ie6.0}
# box{ width:600px!important //for ff width:600px; //for ff+ie6.0 width /**/:500px; //for ie6.0-}
4 Ganda dijana dengan terapung iaitu Jarak
#box{ float:left:100px; margin:0 0 0 100px; 🎜 > Mari kita bincangkan tentang dua elemen blok dan sebaris secara terperinci Ciri-ciri elemen Blok ialah: ia sentiasa bermula pada baris baharu, dan ketinggian, lebar, ketinggian garisan dan jidar semuanya boleh dikawal (elemen blok); ciri-ciri elemen Sebaris ialah: dan Elemen lain berada pada baris yang sama,... tidak boleh dikawal (elemen sebaris); #box{ display:block; display:inline; //Mencapai yang sama Kesan susunan baris diplay:table;
IE tidak mengenali definisi min-, tetapi sebenarnya ia menganggap lebar dan tinggi normal seolah-olah ada min. Ini akan menyebabkan masalah besar. Jika anda hanya menggunakan lebar dan tinggi,
kedua-dua nilai ini tidak akan berubah dalam penyemak imbas biasa Jika anda hanya menggunakan lebar min dan ketinggian min, ia adalah bersamaan dengan tidak menetapkan lebar dan tinggi di bawah IE tinggi.
Sebagai contoh, jika anda ingin menetapkan imej latar belakang, lebar ini lebih penting. Untuk menyelesaikan masalah ini, anda boleh melakukan ini:
#box{ lebar: 80px;}html>body #box{ lebar: auto; ;}
6 Lebar minimum halaman
lebar min ialah arahan CSS yang sangat mudah. Ia boleh menentukan bahawa lebar minimum elemen tidak boleh lebih kecil daripada lebar tertentu, supaya susun atur boleh sentiasa betul. Tetapi IE tidak mengenali ini,
dan ia sebenarnya menganggap lebar sebagai lebar minimum. Untuk membuat arahan ini berfungsi pada IE, anda boleh meletakkan
di bawah teg
, dan kemudian tentukan kelas untuk div:
Kemudian CSS direka bentuk seperti ini: