Mengapa Elemen/Kelas Pseudo Khusus Penjual CSS Tidak Boleh Digabungkan
Adalah amalan biasa dalam CSS untuk menggunakan vendor- kelas pseudo tertentu dan elemen pseudo untuk mencapai keserasian merentas pelayar untuk menggayakan teks pemegang tempat dalam input padang. Walau bagaimanapun, menggabungkan pemilih khusus vendor ini ke dalam set peraturan tunggal, seperti yang mungkin dilakukan dengan pemilih CSS biasa, tidak mungkin disebabkan oleh pengehadan dalam pengesahan CSS.
CSS2.1 mentakrifkan pemilih untuk memasukkan segala-galanya sehingga membuka pendakap kerinting bagi blok pengisytiharan. Jika ejen pengguna menemui pemilih yang tidak dapat dihuraikan, ia mesti mengabaikan kedua-dua pemilih dan blok pengisytiharan yang sepadan.
Dalam konteks awalan khusus vendor, had ini timbul kerana penyemak imbas sering tidak memahami awalan daripada vendor lain. Apabila peraturan mengandungi awalan khusus vendor dalam kelas pseudo atau pemilih unsur pseudo, penyemak imbas mungkin tidak mengenalinya dan dengan itu menggugurkan keseluruhan peraturan.
Sebagai contoh, jika set peraturan yang dipisahkan koma termasuk pemilih dengan kelas pseudo :-moz-placeholder, penyemak imbas yang tidak menyokong awalan khusus Mozilla (seperti Chrome atau Safari) akan mengabaikan keseluruhan peraturan kerana mereka tidak boleh menghuraikan pemilih tertentu itu. Ini menjadikan kaedah gabungan tidak berkesan.
Adalah penting untuk ambil perhatian bahawa sesetengah penyemak imbas, seperti WebKit, mungkin menyimpang sebahagian daripada peraturan ini dan membenarkan elemen pseudo yang tidak dikenali dalam konteks tertentu. Walau bagaimanapun, menggabungkan pemilih khusus vendor kekal tidak konsisten merentas penyemak imbas dan boleh membawa kepada gelagat penggayaan yang tidak dapat diramalkan.
Oleh itu, untuk mengelakkan pengehadan ini dan memastikan penggayaan ruang letak yang konsisten, adalah perlu untuk terus menggunakan pemilih khusus vendor yang berasingan untuk berbeza pelayar.
Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menggabungkan Elemen/Kelas Pseudo Khusus Vendor CSS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!