Jadual Kandungan
2. Gaya CSS Asas
3. Togol kandungan dengan CSS
4. Pilihan: Tambah ikon terbuka/tutup
Rumah hujung hadapan web tutorial css Bagaimana untuk membuat menu akordion CSS sahaja?

Bagaimana untuk membuat menu akordion CSS sahaja?

Aug 03, 2025 pm 01:48 PM
css

Gunakan kotak semak tersembunyi dan CSS: Pseudo-kelas yang diperiksa digabungkan dengan pemilih saudara bersebelahan () untuk mengawal paparan kandungan; 2. Struktur HTML mengandungi input, label dan kandungan div untuk setiap item yang runtuh; 3. Ekspansi lancar/runtuh animasi dengan menetapkan peralihan ketinggian max; 4. Tambah ikon status terbuka/tutup dengan elemen pseudo; 5. Gunakan jenis radio untuk melaksanakan mod tunggal terbuka, manakala kotak semak membolehkan pelbagai bukaan. Ini adalah pelaksanaan menu dilipat interaktif yang tidak memerlukan JavaScript dan serasi dengan pelayar moden.

Bagaimana untuk membuat menu CSS sahaja?

Mewujudkan CSS sahaja mengikut menu adalah cara yang baik untuk menambah kandungan interaktif tanpa bergantung pada JavaScript. Ia menggunakan :checked kotak semak pseudo-kelas yang tersembunyi, dan pemilih saudara bersebelahan ( ) untuk menukar penglihatan kandungan. Inilah cara membina satu langkah demi langkah.

Bagaimana untuk membuat menu CSS sahaja?

1. Struktur HTML

Mulakan dengan struktur HTML yang bersih menggunakan kotak semak (atau butang radio) untuk mengawal setiap item mengikut. Setiap bahagian termasuk label (sebagai tajuk yang boleh diklik) dan div kandungan.

 <div class = "accordion">
  <div class = "accordion-item">
    <input type = "checkbox" id = "Section1" name = "accordion" />
    <label untuk = "Seksyen1"> Seksyen 1 </label>
    <div class = "accordion-content">
      <p> Ini adalah kandungan untuk Bahagian 1. </P>
    </div>
  </div>

  <div class = "accordion-item">
    <input type = "checkbox" id = "Section2" name = "accordion" />
    <label untuk = "Section2"> Seksyen 2 </label>
    <div class = "accordion-content">
      <p> Ini adalah kandungan untuk Bahagian 2. </P>
    </div>
  </div>

  <div class = "accordion-item">
    <input type = "checkbox" id = "Section3" name = "accordion" />
    <label untuk = "Section3"> Seksyen 3 </label>
    <div class = "accordion-content">
      <p> Ini adalah kandungan untuk Bahagian 3. </P>
    </div>
  </div>
</div>

Gunakan type="radio" dan bukannya checkbox jika anda hanya mahu satu bahagian dibuka pada satu masa.

Bagaimana untuk membuat menu CSS sahaja?

2. Gaya CSS Asas

Gaya mengikut kelihatan bersih dan berfungsi. Sembunyikan input kotak semak dan gaya label sebagai tajuk yang boleh diklik.

 .accordion {
  Lebar: 100%;
  Max-Width: 600px;
  Margin: 0 Auto;
  font-family: arial, sans-serif;
}

.accordion-item {
  Sempadan-Bottom: 1px Solid #ddd;
}

.Accordion-item label {
  paparan: blok;
  Padding: 15px;
  latar belakang warna: #F5F5F5;
  Font-Weight: Bold;
  kursor: penunjuk;
  PILIH PENGGUNA: Tiada;
  Peralihan: Latar belakang warna 0.3s mudah;
}

.Accordion-item label: hover {
  latar belakang warna: #e9e9e9;
}

.Ccordion-Content {
  Max-Height: 0;
  Limpahan: Tersembunyi;
  Peralihan: Max-tinggi 0.3s mudah keluar, padding 0.3s mudah;
  Padding: 0 15px;
  latar belakang warna: #fff;
}

.accordion-content p {
  Margin: 10px 0;
}

3. Togol kandungan dengan CSS

Gunakan :checked dan (adik bersebelahan) Combiner untuk mengembangkan kandungan apabila kotak semak diperiksa.

Bagaimana untuk membuat menu CSS sahaja?
 #Seksyen1: Label yang diperiksa. Akademik-kandungan,
#Seksyen2: Label yang diperiksa. Akal-kandungan,
#Seksyen3: Label yang disemak. Accordion-Content {
  Max-Height: 200px;
  Padding: 15px;
}

Trik max-height membolehkan pembukaan/penutupan lancar. Tetapkannya cukup tinggi agar sesuai dengan kandungan anda, tetapi tidak terlalu tinggi untuk mengelakkan animasi yang panjang.


4. Pilihan: Tambah ikon terbuka/tutup

Anda boleh menambah anak panah kecil atau plus/tolak menggunakan elemen pseudo.

 .Accordion-item label :: selepas {
  Kandungan: &#39;&#39;;
  Terapung: betul;
}

#Seksyen1: Label yang diperiksa :: Selepas,
#Seksyen2: Label yang diperiksa :: Selepas,
#Seksyen3: Label yang disemak :: Selepas {
  Kandungan: &#39; -&#39;;
}

Ini memberi pengguna isyarat visual mengenai keadaan setiap bahagian.


Perkara utama untuk diingat

  • Kotak semak mesti datang sebelum label dan kandungan dalam HTML untuk pemilih saudara untuk berfungsi.
  • Gunakan max-height dan bukannya display: none untuk peralihan yang lancar.
  • Input radio ( type="radio" ) hanya membenarkan satu item terbuka pada satu masa; Kotak semak membenarkan beberapa item terbuka.
  • Kebolehcapaian: Pertimbangkan untuk menambah atribut aria-expanded dan aria-controls jika anda meningkatkan dengan JS yang minimum kemudian.

Pada asasnya, ia adalah penggunaan bijak bentuk input dan pemilih CSS untuk mensimulasikan interaksi. Tiada JavaScript diperlukan, dan ia berfungsi di semua pelayar moden.

Atas ialah kandungan terperinci Bagaimana untuk membuat menu akordion CSS sahaja?. 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

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

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.

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!

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 PHP
1596
276
Cara menukar gaya senarai dalam css Cara menukar gaya senarai dalam css Aug 17, 2025 am 10:04 AM

Untuk menukar gaya senarai CSS, gunakan jenis gaya pertama untuk menukar gaya peluru atau penomboran. 1. Gunakan jenis gaya senarai untuk menetapkan peluru UL ke cakera, bulatan atau persegi, dan bilangan OL adalah perpuluhan, rendah alpha, atas-alpha, rendah-Rom atau atas-Rom. 2. Keluarkan tag sepenuhnya dengan gaya senarai: Tiada. 3. Gunakan senarai gaya senarai: URL ('Bullet.png') untuk menggantikannya dengan imej tersuai. 4. Gunakan senarai gaya senarai: dalam

Cara membuat gelangsar testimoni responsif dengan CSS Cara membuat gelangsar testimoni responsif dengan CSS Aug 12, 2025 am 09:42 AM

Adalah mungkin untuk membuat slider karusel automatik yang responsif dengan CSS tulen, hanya menggabungkan struktur HTML, susun atur flexbox, dan animasi CSS. 2. Pertama membina bekas HTML semantik yang mengandungi pelbagai syarat cadangan, setiap .Item mengandungi kandungan rujukan dan maklumat pengarang. 3. Gunakan bekas induk untuk menetapkan paparan: flex, lebar: 300% (tiga slaid) dan gunakan limpahan: tersembunyi untuk mencapai susunan mendatar. 4. Gunakan @KeyFrames untuk menentukan transformasi translatex dari 0% hingga -100%, dan menggabungkan animasi: scroll15slinearinfinite untuk mencapai tatal automatik lancar. 5. Tambah media

Cara membuat sempadan bertitik di CSS Cara membuat sempadan bertitik di CSS Aug 15, 2025 am 04:56 AM

Gunakan CSS untuk membuat sempadan bertitik, hanya tetapkan atribut sempadan untuk bertitik. Sebagai contoh, "Sempadan: 3PXDotted#000" boleh menambah sempadan titik hitam 3-pixel ke elemen. Dengan menyesuaikan lebar sempadan, saiz titik boleh diubah. Sempadan yang lebih luas menghasilkan mata yang lebih besar. Anda boleh menetapkan sempadan bertitik untuk sisi tertentu, seperti "Border-top: 2PxDotteded". Sempadan bertitik sesuai untuk elemen peringkat blok seperti div dan input. Mereka sering digunakan dalam keadaan fokus atau kawasan yang boleh diedit untuk meningkatkan kebolehcapaian. Perhatikan kontras warna. Pada masa yang sama, berbeza dengan gaya garis pendek Dashed, bertitik membentangkan bentuk titik bulat. Ciri ini digunakan secara meluas dalam semua pelayar arus perdana.

Cara menggunakan kecerunan CSS untuk latar belakang Cara menggunakan kecerunan CSS untuk latar belakang Aug 17, 2025 am 08:39 AM

CSSgradientsprovidesmoothcolortransitionswithoutimages.1.Lineargradientstransitioncolorsalongastraightlineusingdirectionsliketobottomorangleslike45deg,andsupportmultiplecolorstopsforcomplexeffects.2.Radialgradientsradiatefromacentralpointusingcircleo

Cara Membuat Kesan Glassmorfisme Dengan CSS Cara Membuat Kesan Glassmorfisme Dengan CSS Aug 22, 2025 am 07:54 AM

Untuk membuat kesan meniru kaca CSS, anda perlu menggunakan penapis latar belakang untuk mencapai latar belakang kabur, menetapkan latar belakang lut seperti RGBA (255,255,255,0.1), tambah sempadan halus dan bayang-bayang untuk meningkatkan rasa hierarki, dan pastikan terdapat kandungan visual yang cukup di belakang unsur-unsur; 1. Gunakan penapis latar belakang: blur (10px) untuk mengaburkan kandungan latar belakang; 2. Gunakan RGBA atau HSLA untuk menentukan latar belakang telus untuk mengawal tahap ketelusan; 3. Tambah 1PxSolidrgba (255,255,255,0.3) sempadan dan bayang-bayang kotak untuk meningkatkan tiga dimensi; 4. Pastikan bekas mempunyai latar belakang yang kaya seperti gambar atau tekstur untuk membentangkan kesan penembusan kabur; 5. Ia serasi dengan pelayar lama

Cara menukar kursor dalam CSS Cara menukar kursor dalam CSS Aug 16, 2025 am 05:00 AM

UseBuilt-IncursortypesLikePointer, Bantuan, Ornot-AllowedtoprovideimmediatevisualFeedBackFordifferentInteractivements.2.applycustomcursorimageswithTheCursorPropertyuseSaurl, OptionallySpecyfyLySpotandingLudinglikeAtoToAllik.

Cara Menggunakan GRID-Template-areas di CSS Cara Menggunakan GRID-Template-areas di CSS Aug 22, 2025 am 07:56 AM

Thegrid-template-areaspropertyallowsdeveloperstercreateintuitive, readableLelayoutsbydefiningnamedgridareas; eachstringRepresentowandeachwordacolumncell, withgrid-areanamesonchildelementsmatchingthoseIntHetHetPlate, sedemikian "headerheaderererheaderererheadererheadererheadererheadererheadererheadererheadererheadererheadererheaderheaderheadererheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheaderheader."

Cara Menambah Bayang Kotak di CSS Cara Menambah Bayang Kotak di CSS Aug 18, 2025 am 11:39 AM

Untuk menambah bayang-bayang kotak, gunakan atribut box-shadow; 1. Sintaks asas adalah badai kotak: mendatar mengimbangi vertikal offset blur radius pengembangan radius bayang-bayang dalam warna; 2. Tiga nilai pertama diperlukan, selebihnya adalah pilihan; 3. Gunakan RGBA () atau HSLA () untuk mencapai kesan telus; 4. Radius pengembangan positif memperluaskan bayang -bayang dan nilai negatif dikurangkan; 5. Pelbagai bayang -bayang boleh ditambah dengan pemisahan koma; 6. Berlebihan harus dielakkan untuk memastikan penglihatan diuji pada latar belakang yang berlainan; Atribut ini disokong dengan baik oleh penyemak imbas, dan penggunaan yang munasabah dapat meningkatkan tekstur reka bentuk.

See all articles