Rumah > Artikel > hujung hadapan web > Memahami Perbezaan Antara `:focus` dan `:focus-visible` dalam CSS
Saya telah mempelajari bahagian saya yang saksama tentang kepentingan kebolehcapaian papan kekunci, jadi saya tahu bahawa petunjuk visual elemen yang difokuskan adalah sangat penting. Tetapi kelas pseudo :focus yang terkenal tidak selalunya paling sesuai untuk kerja ini. Di situlah :focus-visible masuk. Mari kita lihat perbezaan antara dua kelas pseudo ini dan terokai amalan terbaik untuk menggunakannya dengan berkesan.
Kelas pseudo :focus ialah pemilih CSS yang menggunakan gaya pada mana-mana elemen yang menerima fokus, tidak kira bagaimana fokus itu dicetuskan. Ini termasuk acara fokus daripada navigasi papan kekunci, klik tetikus dan interaksi sentuhan.
button:focus { outline: 2px solid blue; }
Dalam contoh ini, butang akan memaparkan garis besar biru apabila ia difokuskan, sama ada pengguna mengklik padanya dengan tetikus, mengetiknya pada skrin sentuh atau menavigasi ke sana menggunakan papan kekunci.
Kelas pseudo :focus-visible adalah lebih khusus. Ia hanya menggunakan gaya pada elemen apabila penyemak imbas menentukan bahawa fokus harus kelihatan. Ini biasanya berlaku apabila pengguna menavigasi melalui papan kekunci atau teknologi bantuan dan bukannya melalui input tetikus atau sentuhan.
button:focus-visible { outline: 2px solid blue; }
Di sini, butang hanya akan menunjukkan garis besar biru apabila difokuskan melalui navigasi papan kekunci atau kaedah input lain yang biasanya memerlukan penunjuk fokus yang boleh dilihat.
Untuk mencapai kebolehaksesan dan pengalaman pengguna yang terbaik, menggabungkan kedua-dua :focus dan :focus-visible dalam CSS anda selalunya merupakan idea yang baik.
button:focus { outline: 2px solid blue; }
Berikut ialah contoh Stackblitz tentang rupa gaya sedemikian untuk anda cuba dan mainkan:
Kelas pseudo :focus-visible menawarkan cara yang lebih halus untuk mengurus penunjuk fokus, meningkatkan kebolehcapaian dan pengalaman pengguna, terutamanya untuk papan kekunci dan pengguna teknologi bantuan. Dengan memahami perbezaan antara :focus dan :focus-visible, dan menggunakan amalan terbaik dalam CSS anda, anda boleh mencipta aplikasi web yang lebih mudah diakses dan mesra pengguna.
Ingat, kebolehcapaian tidak boleh difikirkan semula. Dengan menggunakan gaya fokus dengan teliti, anda memastikan bahawa semua pengguna, tanpa mengira cara mereka berinteraksi dengan tapak anda, boleh menavigasi dan berinteraksi dengan mudah.
Atas ialah kandungan terperinci Memahami Perbezaan Antara `:focus` dan `:focus-visible` dalam CSS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!