Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimanakah Saya Boleh Menyasarkan Elemen Input Yang Tidak Dalam Kelas Tertentu dalam CSS?

Bagaimanakah Saya Boleh Menyasarkan Elemen Input Yang Tidak Dalam Kelas Tertentu dalam CSS?

Linda Hamilton
Linda Hamiltonasal
2024-10-27 11:07:30856semak imbas

How Can I Target Input Elements That Are Not Within a Specific Class in CSS?

Pemilih CSS Tanpa Penafian

Dalam CSS, memilih elemen yang tidak sepadan dengan kriteria tertentu boleh mencabar kerana kekurangan " bukan" pemilih. Had ini telah diiktiraf oleh pembangun web selama bertahun-tahun, meninggalkan mereka untuk mencari penyelesaian alternatif.

Pertimbangkan peraturan CSS berikut:

.classname input {
  background: red;
}

Peraturan ini memberikan latar belakang merah kepada semua medan input dalam Unsur HTML dengan nama kelas "nama kelas." Walau bagaimanapun, katakan anda ingin mengecualikan medan input dalam elemen "nama kelas" daripada gaya latar belakang merah. Bagaimanakah ini boleh dicapai?

Sokongan Penyemak Imbas Semasa

Malangnya, penyemak imbas web semasa tidak menyokong pemilih negatif dalam CSS. Contoh yang diberikan tidak boleh dicapai menggunakan CSS sahaja.

Penyelesaian Alternatif

Walaupun CSS tidak mempunyai pemilih negatif, penyelesaian alternatif wujud:

  • Gunakan JavaScript atau jQuery: Rangka kerja JavaScript seperti kaedah tawaran jQuery seperti :not() untuk memilih elemen yang tidak sepadan dengan kriteria tertentu.
<code class="js">$j(':not(.classname)>input').css({background:'red'});</code>
  • Peraturan Bersarang: Dengan menggunakan peraturan bersarang, anda secara tidak langsung boleh mengecualikan elemen tertentu daripada gaya:
input {
  background: #ccc;
}

.classname input {
  background: red;
}

Dalam contoh ini, semua medan input mempunyai latar belakang kelabu secara lalai. Dalam elemen dengan nama kelas "nama kelas", medan input mengatasi gaya ini dengan latar belakang merah. Ambil perhatian bahawa pendekatan ini mempengaruhi gaya semua medan input dalam elemen "nama kelas", tanpa mengira lokasinya.

Adalah penting untuk ambil perhatian bahawa walaupun sokongan penyemak imbas untuk pemilih negatif CSS telah dibahaskan selama bertahun-tahun, masih terdapat tiada pelaksanaan rasmi setakat penulisan ini. Memandangkan teknologi penyemak imbas terus berkembang, fungsi ini mungkin tersedia pada masa hadapan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyasarkan Elemen Input Yang Tidak Dalam Kelas Tertentu dalam CSS?. 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