Jadual Kandungan
Menangani cabaran gaya biasa
Isu 1: Kursor
Penyelesaian CSS
Menyesuaikan Kursor
Memaparkan bersarang Kandungan dalam talian
Adakah rancangan 504 anak saya akan dilaksanakan?
Tajuk vs butang
Gaya dalam talian
Bonus: Tidak termasuk gaya penjelajah internet
Kesimpulan
Rumah hujung hadapan web tutorial css Dua isu menggayakan elemen butiran dan bagaimana menyelesaikannya

Dua isu menggayakan elemen butiran dan bagaimana menyelesaikannya

Mar 28, 2025 am 10:42 AM

Dua isu menggayakan elemen butiran dan bagaimana menyelesaikannya

Sebelum ini, mewujudkan blok kandungan yang mudah diperkembangkan yang diperlukan JavaScript atau workarounds CSS kompleks. Mengubah HTML juga boleh menjadi rumit. Sekarang, yang<details></details> dan<summary></summary> Unsur -unsur (membentuk "widget pendedahan") memudahkannya dengan ketara. Kami menggunakannya secara meluas di tempat kerja untuk Soalan Lazim, sebagai contoh.

Menangani cabaran gaya biasa

Manakala<details></details> dan<summary></summary> Secara semulajadi menyediakan fungsi berkembang/runtuh, anda mungkin masih memerlukan CSS untuk persembahan yang optimum. Tanpa gaya, dua isu utama timbul:

Isu 1:<summary></summary> Kursor

The<summary></summary> elemen, sementara interaktif, mungkir kepada kursor pemilihan teks dan bukannya penunjuk yang diharapkan.

Isu 2: Unsur blok bersarang di<summary></summary>

Elemen peringkat blok bersarang (seperti tajuk) di dalam<summary></summary> menyebabkan mereka muncul di bawah anak panah, bukan sebaris.

Penyelesaian CSS

Untuk menyelesaikannya, tambahkan gaya ini ke Reset CSS anda:

 Ringkasan Butiran {
  kursor: penunjuk;
}

Butiran Ringkasan> * {
  paparan: sebaris;
}
Salin selepas log masuk

Mari kita periksa setiap isu dan penyelesaiannya secara terperinci.

Menyesuaikan<summary></summary> Kursor

Kursor harus secara visual mencerminkan interaksi yang dimaksudkan. Kursor teks lalai dihidupkan<summary></summary> Unsur -unsur, sementara secara teknikal betul (teks boleh dipilih), kurang intuitif daripada penunjuk.

Penyelesaiannya mudah:

 Ringkasan Butiran {
  kursor: penunjuk;
}
Salin selepas log masuk

Banyak laman web yang terkenal, termasuk dokumen web MDN dan GitHub, sudah menggunakan gaya ini untuk widget pendedahan mereka. cursor: text mungkin mencerminkan seleksi teks ringkasan, tetapi penunjuk umumnya lebih baik untuk elemen interaktif. Perhatikan bahawa menukar kursor hanya mempengaruhi penampilan visual; Selectability tetap tidak berubah.

Memaparkan bersarang<summary></summary> Kandungan dalam talian

Untuk Soalan Lazim, saya sering membungkus soalan dalam tajuk (misalnya,<h3></h3> ) dalam<summary></summary> :

<details><summary><h3 id="Adakah-rancangan-anak-saya-akan-dilaksanakan"> Adakah rancangan 504 anak saya akan dilaksanakan?</h3></summary><p> Ya. Sama seperti musim bunga, pengurus kes akan menjangkau pelajar.</p></details>
Salin selepas log masuk

Ini menawarkan beberapa kelebihan:

  • Gaya yang konsisten: Mengekalkan konsistensi visual dengan tajuk lain.
  • Keserasian IE/Edgehtml: Menyediakan sandaran untuk pelayar yang lebih tua yang tidak menyokong<details></details> .
  • Kebolehcapaian: Navigasi Teknologi Pembantu AIDS (walaupun tafsiran oleh pembaca skrin boleh berbeza -beza, seperti yang dibincangkan di bawah).

Tajuk vs butang

The<summary></summary> Unsur berkelakuan seperti butang (secara tersirat mempunyai role=button ), namun tidak seperti butang, ia membolehkan tajuk bersarang. Ini menimbulkan konflik:

  • Headings Aid Navigation.
  • Butang biasanya menyentuh semantik dari elemen bersarang.

Keserasian pembaca skrin tidak konsisten di sini. NVDA dan Voiceover mengenali tajuk di dalam<summary></summary> , tetapi rahang tidak. Oleh itu, semasa menggayakan tajuk dalam<summary></summary> mungkin, tafsiran semantik mereka tidak dijamin.

Gaya dalam talian

Untuk mengelakkan anak panah daripada muncul di atas tajuk, gunakan gaya sebaris untuk unsur -unsur yang bersarang terus dalam<summary></summary> :

 Butiran Ringkasan> * {
  paparan: sebaris;
}
Salin selepas log masuk

Gunakan inline , bukan inline-block , untuk mengelakkan isu pembalut. Sementara menggoda untuk menggunakan display: flex on<summary></summary> , ini menyembunyikan anak panah.

Bonus: Tidak termasuk gaya penjelajah internet

Oleh kerana versi IE dan lebih tua tidak menyokong<details></details> , Elakkan menggunakan gaya tersuai kepada mereka menggunakan pertanyaan ciri:

 @Supports not (-ms-im-align: auto) {
  Ringkasan Butiran {
    kursor: penunjuk;
  }
  Butiran Ringkasan> * {
    paparan: sebaris;
  }
  /* Lain -lain<details> /<summary> Gaya */
}</summary></details>
Salin selepas log masuk

IE mengabaikan blok ini sepenuhnya. EdgeHTML juga mengabaikannya kerana cek -ms-ime-align . Perhatikan bahawa versi krom dan safari yang sangat lama (dengan bahagian pasaran yang tidak dapat dielakkan) juga kekurangan sokongan pertanyaan ciri. Blok @supports (details) akan menjadi ideal tetapi mempunyai sokongan penyemak imbas yang kurang.

Kesimpulan

Dengan struktur HTML yang betul dan gaya CSS ini, anda boleh menyesuaikan widget pendedahan anda dengan mudah. Ingat bahawa semasa menggayakan<summary></summary> Unsur -unsur adalah mudah, keserasian pembaca skrin untuk tajuk bersarang memerlukan pertimbangan.

Atas ialah kandungan terperinci Dua isu menggayakan elemen butiran dan bagaimana menyelesaikannya. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

<🎜>: Bubble Gum Simulator Infinity - Cara Mendapatkan dan Menggunakan Kekunci Diraja
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Sistem Fusion, dijelaskan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1670
14
Tutorial PHP
1274
29
Tutorial C#
1256
24
Perbandingan pembekal bentuk statik Perbandingan pembekal bentuk statik Apr 16, 2025 am 11:20 AM

Mari kita cuba menyusun istilah di sini: "Penyedia Borang Statik." Anda membawa html anda

Bukti konsep untuk menjadikan sass lebih cepat Bukti konsep untuk menjadikan sass lebih cepat Apr 16, 2025 am 10:38 AM

Pada permulaan projek baru, kompilasi SASS berlaku dalam sekejap mata. Ini terasa hebat, terutamanya apabila ia dipasangkan dengan BrowserSync, yang dimuat semula

Berita Platform Mingguan: Atribut Memuat HTML, Spesifikasi ARIA Utama, dan Bergerak Dari IFRAME ke Shadow Dom Berita Platform Mingguan: Atribut Memuat HTML, Spesifikasi ARIA Utama, dan Bergerak Dari IFRAME ke Shadow Dom Apr 17, 2025 am 10:55 AM

Pada minggu ini, berita platform, Chrome memperkenalkan atribut baru untuk memuatkan, spesifikasi aksesibiliti untuk pemaju web, dan gerakan BBC

Beberapa tangan dengan elemen dialog HTML Beberapa tangan dengan elemen dialog HTML Apr 16, 2025 am 11:33 AM

Ini saya melihat elemen HTML untuk kali pertama. Saya telah menyedarinya untuk seketika, tetapi Haven &#039; t mengambilnya untuk putaran lagi. Ia mempunyai cukup keren dan

Kertas kerja Kertas kerja Apr 16, 2025 am 11:24 AM

Beli atau Membina adalah perdebatan klasik dalam teknologi. Membina barang sendiri mungkin berasa lebih murah kerana tidak ada item baris pada bil kad kredit anda, tetapi

Di manakah 'Langgan Podcast' pautan ke? Di manakah 'Langgan Podcast' pautan ke? Apr 16, 2025 pm 12:04 PM

Untuk sementara waktu, iTunes adalah anjing besar dalam podcasting, jadi jika anda mengaitkan "Langgan Podcast" untuk suka:

Berita Platform Mingguan: Bookmarket Jarak Teks, Menunggu Tahap Teratas, Penunjuk Memuatkan AMP Baru Berita Platform Mingguan: Bookmarket Jarak Teks, Menunggu Tahap Teratas, Penunjuk Memuatkan AMP Baru Apr 17, 2025 am 11:26 AM

Pada minggu ini, roundup, sebuah bookmarklet yang berguna untuk memeriksa tipografi, menggunakan menunggu untuk mengamuk dengan cara modul JavaScript mengimport satu sama lain, ditambah Facebook &#039; s

Pilihan untuk menganjurkan analisis berasaskan bukan JavaScript anda sendiri Pilihan untuk menganjurkan analisis berasaskan bukan JavaScript anda sendiri Apr 15, 2025 am 11:09 AM

Terdapat banyak platform analisis untuk membantu anda mengesan data pelawat dan penggunaan di laman web anda. Mungkin paling penting Google Analytics, yang digunakan secara meluas

See all articles