Saya punya kotak pilih HTML yang perlu saya gaya. Saya lebih suka menggunakan CSS saja tetapi jika harus, saya akan menggunakan jQuery untuk mengisi kekurangan.
Adakah yang bisa merekomendasikan tutorial atau plugin yang bagus?
Saya tahu, Google, tetapi saya sudah mencari selama dua jam terakhir dan saya tidak menemukan apa pun yang memenuhi kebutuhan saya.
Itu harus:
- Kompatibel dengan jQuery 1.3.2
- Dapat diakses
- Rendah hati
- Benar-benar dapat disesuaikan dalam hal menata setiap aspek dari kotak pilih
Adakah yang tahu sesuatu yang akan memenuhi kebutuhan saya?
jquery
css
html-select
Apoorv Khurasia
sumber
sumber
select
men- style elemen cross-browser. Tetapi jika orang mau hidup dengan perbedaan, Anda dapat menata mereka - termasuk perbatasan.Jawaban:
Saya telah melihat beberapa plugin jQuery di luar sana yang mengonversikan
<select>
ke<ol>
dan<option>
ke<li>
, sehingga Anda dapat menatanya dengan CSS. Tidak mungkin terlalu sulit untuk menggulung sendiri.Ini satu: https://gist.github.com/1139558 (Dulu dia di sini , tapi sepertinya situsnya down.)
Gunakan seperti ini:
Gaya seperti ini:
sumber
Pembaruan: Pada 2013, dua yang saya lihat yang patut diperiksa adalah:
Ya!
Pada 2012 salah satu solusi paling ringan dan fleksibel yang saya temukan adalah ddSlick . Info yang relevan (diedit) dari situs:
select options
Dan inilah preview dari berbagai mode:
sumber
Sedangkan untuk CSS, Mozilla tampaknya yang paling ramah, terutama dari FF 3.5+. Browser Webkit kebanyakan hanya melakukan hal mereka sendiri, dan mengabaikan gaya apa pun. IE sangat terbatas, meskipun IE8 memungkinkan Anda setidaknya gaya perbatasan warna / lebar.
Berikut ini sebenarnya terlihat cukup bagus di FF 3.5+ (memilih preferensi warna Anda, tentu saja):
Tetapi ketika datang ke IE, Anda harus menonaktifkan warna latar belakang pada opsi jika Anda tidak ingin itu ditampilkan ketika menu opsi tidak ditarik ke bawah. Dan, seperti yang saya katakan, webkit melakukan hal sendiri.
sumber
Kami telah menemukan cara sederhana dan layak untuk melakukan ini. Ini lintas-browser, dapat didegradasi, dan tidak memecah posting bentuk. Pertama atur opacity kotak pilih ke 0.
ini agar Anda masih bisa mengkliknya
Kemudian buat div dengan dimensi yang sama dengan kotak pilih. Div harus diletakkan di bawah kotak pilih sebagai latar belakang. Gunakan {position: absolute} dan z-index untuk mencapai ini.
Perbarui innerHTML div dengan javascript. Mudah dengan jQuery:
Itu dia! Cukup gaya div Anda, bukan kotak pilih. Saya belum menguji kode di atas sehingga Anda mungkin perlu mengubahnya. Tapi semoga Anda mendapatkan intinya.
Saya pikir solusi ini mengalahkan {-webkit-appearance: none;}. Apa yang harus dilakukan browser paling banyak adalah menentukan interaksi dengan elemen formulir, tetapi jelas bukan bagaimana awalnya ditampilkan pada halaman seperti yang merusak desain situs.
sumber
Berikut ini sedikit plug jika Anda kebanyakan menginginkannya
select
elemenoptions
, zindex yang tepat, dll.)ul
danli
dihasilkanMaka jquery.yaselect.js bisa lebih cocok . Secara sederhana:
Dan markup terakhir adalah:
Lihat di github.com
sumber
Anda dapat sedikit banyak menggunakan CSS dengan sendirinya
Tapi ini sepenuhnya tergantung pada browser. Beberapa browser keras kepala.
Namun, ini hanya akan membuat Anda sejauh ini, dan itu tidak selalu terlihat sangat bagus. Untuk kontrol penuh, Anda harus mengganti pilihan melalui jQuery dengan widget Anda sendiri yang meniru fungsi kotak pilih. Pastikan bahwa ketika JS dinonaktifkan, kotak pilih yang normal ada di tempatnya. Ini memungkinkan lebih banyak pengguna untuk menggunakan formulir Anda, dan membantu dengan aksesibilitas.
sumber
Sebagian besar browser tidak mendukung penyesuaian tag pilih menggunakan css. Tapi saya menemukan javascript ini yang dapat digunakan untuk memilih tag gaya. Namun seperti biasa tidak ada dukungan untuk browser IE.
http://ryanfait.com/resources/custom-checkboxes-and-radio-buttons/ Saya melihat ada kesalahan pada hal ini bahwa atribut Onchange tidak berfungsi.
sumber
Saya baru saja menemukan ini yang tampaknya sangat bagus.
http://www.dfc-e.com/metiers/multimedia/opensource/jqtransform/
sumber
Jika punya solusi tanpa jQuery. Tautan di mana Anda dapat melihat contoh yang berfungsi: http://www.letmaier.com/_selectbox/select_general_code.html (ditata dengan lebih banyak css)
Bagian gaya dari solusi saya:
Sekarang kode-HTML di dalam tag-tubuh:
sumber
Diperbarui untuk 2014: Anda tidak perlu jQuery untuk ini . Anda dapat sepenuhnya mendisain kotak pilih tanpa jQuery menggunakan StyleSelect . Misalnya, diberikan kotak pilih berikut:
Menjalankan
styleSelect('select.demo')
akan membuat kotak pilih yang ditata sebagai berikut:sumber
Saya membuat plugin jQuery, SelectBoxIt , beberapa hari yang lalu. Itu mencoba untuk meniru perilaku kotak pilih HTML biasa, tetapi juga memungkinkan Anda untuk gaya dan menghidupkan kotak pilih menggunakan jQueryUI. Coba lihat dan beri tahu saya apa yang Anda pikirkan.
http://www.selectboxit.com
sumber
Anda harus mencoba menggunakan beberapa plugin jQuery seperti ikSelect .
Saya mencoba membuatnya sangat dapat disesuaikan tetapi mudah digunakan.
http://github.com/Igor10k/ikSelect
sumber
Ini sepertinya sudah tua tapi di sini plugin yang sangat menarik - http://uniformjs.com
sumber
ini pada penggunaan yang
twitter-bootstrap
gaya untuk mengubahselect
didropdown
menu https://github.com/silviomoreto/bootstrap-selectsumber
Solusi sederhananya adalah Warp kotak pilihan Anda di dalam div, dan beri style div yang sesuai dengan desain Anda. Atur opacity: 0 untuk memilih kotak, itu akan membuat kotak pilih tidak terlihat. Masukkan tag rentang dengan jQuery dan ubah nilainya secara dinamis jika pengguna mengubah nilai turun. Total demonstrasi yang ditunjukkan dalam tutorial ini dengan penjelasan kode. Semoga ini akan menyelesaikan masalah Anda.
Kode JQuery sepertinya mirip dengan ini.
sumber