1. Bagaimana untuk melaksanakan bar navigasi seperti sebelah kiri http://chuangzaoshi.com/code?
2 Bolehkah ia direalisasikan sepenuhnya menggunakan css? Bagaimana untuk melaksanakan css tulen? Bagaimana untuk melaksanakan js?
Terima kasih!
ps: Terima kasih kepada kedua-dua tuan atas jawapan mereka, saya tidak menerangkan dengan jelas soalan saya adalah seperti berikut
左侧导航点击设计等大的标签会自动收起原来的,弹出现在的ul,同时右侧的内容又跟着变化。
Bagaimana untuk melaksanakan ini tidak jelas, saya harap anda boleh memberi saya nasihat.
Kesan yang manakah yang anda maksudkan? :hover Songsang, tiada yang terlalu rumit.
Anda telah memberi contoh sendiri, cuma buka kodnya dan bandingkannya.
Jika anda tidak memahami gaya atau kesan tertentu, anda boleh meminta butiran lanjut.
Terlalu luas untuk bertanya secara langsung bagaimana untuk melaksanakan keseluruhannya
Adakah anda memberikan contoh pelaksanaan? Css dan js telah ditunjukkan kepada anda, jadi anda boleh merujuknya secara langsung.
Berdasarkan soalan anda yang baru ditambah
Anda dapat melihat bahawa setiap kali anda mengklik pada label besar, ia sebenarnya melompat ke halaman lain Ul di bawah semua label besar ditutup secara lalai.
Kemudian mengikut halaman semasa, anda akan mendapati bahawa label besar semasa akan mempunyai nama kelas yang aktif, dan ul yang anda ingin buka akan mengikutinya, jadi mudah:
kaedah css ialah
.active + ul { display:block; }
kaedah jquery ialah
$('.active').next('ul').css('display','block');
Kaedah lain adalah serupa Semuanya memperoleh teg aktiviti aktif dan menunjukkan senarai teg kecil di bawahnya untuk dipaparkan.
Menurut contoh yang anda berikan, kerana ia tidak ditulis dalam css, tetapi dimasukkan ke dalam atribut gaya, ia harus dilaksanakan menggunakan js.
Adakah anda mahukan kesan perubahan warna apabila anda menggerakkan tetikus ke atasnya?
Jika dilaksanakan dengan CSS, gunakan senarai di sebelah kiri, kemudian tukar gaya, gunakan
:hover
pseudo-class untuk memadankan gaya menggerakkan tetikus ke atasContohnya
Jika dilaksanakan dengan JS, adalah perlu untuk memantau acara kemasukan tetikus elemen yang sepadan
onmouseenter
,将列表的项目中除了当前项,其他的样式都设置为常规样式,还要监听元素的鼠标离开事件onmouseleave
Apabila tetikus pergi, gaya yang ditetapkan apabila tetikus melepasi perlu dipulihkan kepada gaya biasa.Kemas kini
Adalah disyorkan agar anda menerangkan butiran masalah dengan jelas pada kali pertama anda bertanya soalan pada kali berikutnya, jika tidak, masa responden akan terbuang.
Sebagai jawapan kepada soalan yang anda ajukan kemudian,
Susun atur HTML di sebelah kiri mungkin seperti ini
Kemudian, gerakkan tetikus ke atas yang diputihkan, seperti yang dinyatakan di atas.
Jika anda mengklik, tambahkan kelas CSS pada
<li>
yang diklik, seperti.active
, dan kemudian tambah<li>
加上一个CSS类,比如.active
,然后,加上之前的:hover
sebelumnya, CSS adalah serupa dengan ini:Sudah tentu, memandangkan label semasa dan gaya alih tetikus dalam contoh ini adalah sama, anda boleh menggabungkan
ul li:hover
和ul li.active
untuk menulisDengan cara ini, anda tidak akan dapat menukar tab Reka letak HTML di sebelah kanan kelihatan seperti ini:
Secara lalai, CSS akan digunakan untuk memaparkan kelas
#main
中第一个子p
显示出来,将其他的隐藏,建议也给p加上.active
类,有.active
, jika tidak, ia akan disembunyikan.Kemudian, tulis acara JS, tetapi yang asli lebih menyakitkan untuk ditulis. Adalah disyorkan untuk menggunakan jQuery untuk beroperasi Berikut adalah dua contoh kaedah penulisan
Native:
Jika anda menggunakan perpustakaan jQuery, ia akan menjadi lebih mudah, seperti berikut:
Kesimpulan
Ini menerangkan begitu banyak perkara, tetapi saya ingin memberitahu anda satu berita yang sangat menyedihkan. Iaitu, tapak web contoh yang anda berikan mungkin tidak melakukan ini sama sekali. Laman web ini mungkin mempunyai 4 halaman dan kemudian melompat ke satu sama lain melalui pautan, dan label halaman semasa pada setiap halaman sentiasa menyala. (Saya tidak melihat kod sumber dengan teliti, tetapi saya tidak tahu sama ada ia adalah penghalaan berdasarkan alamat URL yang berbeza, jadi saya hanya berkata "mungkin").