Bagaimana saya bisa menambahkan glyphicon ke kotak input jenis teks? Misalnya saya ingin memiliki 'ikon-pengguna' di input nama pengguna, sesuatu seperti ini:
css
twitter-bootstrap
glyphicons
doovers
sumber
sumber
Jawaban:
Tanpa Bootstrap:
Kita akan sampai di Bootstrap sebentar lagi, tetapi inilah konsep mendasar CSS yang sedang dimainkan untuk melakukannya sendiri. Seperti yang ditunjukkan oleh jenggot , Anda dapat melakukan ini dengan CSS dengan benar-benar menempatkan ikon di dalam elemen input. Kemudian tambahkan padding di kedua sisi sehingga teks tidak tumpang tindih dengan ikon.
Jadi untuk HTML berikut:
Anda dapat menggunakan CSS berikut untuk menyelaraskan glyphs kiri dan kanan:
Demo di Plunker
Dengan Bootstrap:
Seperti yang ditunjukkan buffer , ini dapat dilakukan secara asli di dalam Bootstrap dengan menggunakan Status Validasi dengan Ikon Opsional . Ini dilakukan dengan memberikan
.form-group
elemen kelas.has-feedback
dan ikon kelas.form-control-feedback
.Contoh paling sederhana adalah sekitar seperti ini:
Pro :
Cons :
Untuk mengatasi kontra, saya mengumpulkan permintaan tarik ini dengan perubahan untuk mendukung ikon rata kiri. Karena ini adalah perubahan yang relatif besar, ia telah ditunda hingga rilis di masa mendatang, tetapi jika Anda memerlukan fitur ini hari ini , berikut adalah panduan implementasi yang sederhana:
Cukup sertakan perubahan bentuk ini di css (juga diuraikan melalui snipet tumpukan tersembunyi di bagian bawah)
* KURANG : jika Anda membuat melalui kurang , inilah formulir perubahan kurang
Kemudian, yang harus Anda lakukan adalah memasukkan kelas
.has-feedback-left
pada grup apa pun yang memiliki kelas.has-feedback
untuk menyelaraskan ikon.Karena ada banyak kemungkinan konfigurasi html pada tipe formulir yang berbeda, ukuran kontrol yang berbeda, set ikon yang berbeda, dan visibilitas label yang berbeda, saya membuat halaman pengujian yang menunjukkan set HTML yang benar untuk setiap permutasi bersama dengan demo langsung.
Ini demo di Plunker
Tidak menemukan apa yang Anda cari ? Coba pertanyaan serupa ini:
Penambahan CSS untuk ikon umpan balik Aligned Kiri
Tampilkan cuplikan kode
sumber
.focusedInput
kelas didefinisikan setelah.input-group-addon
jadi ketika Style Sheets Cascade bawah, gaya yang terakhir harus didahulukan. Bisakah Anda menggambarkan skenario yang lebih baik yang menyebabkan ini menjadi masalah?<i class="icon-user"></i>
ke<i class="fa fa-user"></i>
. Kapan pun Anda berpikir tentang memperbarui perpustakaan eksternal, pastikan untuk membaca catatan rilis dan dokumentasi baru untuk menentukan apakah aplikasi Anda masih kompatibel atau perlu ditingkatkan.The resmi Metode. Tidak diperlukan CSS khusus:
DEMO: http://jsfiddle.net/LS2Ek/1/
Demo ini didasarkan pada contoh di Bootstrap docs. Gulir ke bawah ke "Dengan Ikon Opsional" di sini http://getbootstrap.com/css/#forms-control-validation
sumber
{left:0}
ke kelas glyphicon harus menjaga perataan kiri. jsfiddle.net/LS2Ek/30 . Saya suka pendekatan outline + box-shadow Anda. Terlihat rapi!left:0
tidak lagi mengidentifikasi awal input. Anda juga perlu menambahkan padding di sebelah kiri input, dan menghapusnya di sebelah kanan. Tetap saja, solusi yang sangat bagus dan bersih. Saya pikir mengidentifikasi bagian kiri input adalah bagian yang sulit, yang merupakan tempat pembungkusposition:relative
berguna.Inilah alternatif khusus CSS. Saya mengatur ini untuk bidang pencarian untuk mendapatkan efek yang mirip dengan Firefox (& seratus aplikasi lainnya.)
Ini biola .
HTML
CSS
sumber
Inilah cara saya melakukannya hanya menggunakan bootstrap CSS default v3.3.1:
Dan begini tampilannya:
sumber
'Cheat' ini akan bekerja dengan efek samping bahwa kelas glyphicon akan mengubah font untuk kontrol input.
Biola
Jika Anda ingin menghilangkan efek samping, Anda dapat menghapus kelas "glyphicon" dan menambahkan CSS berikut (Mungkin ada cara yang lebih baik untuk menata elemen pseudo placeholder dan saya hanya menguji di Chrome).
Biola
Mungkin solusi yang lebih bersih:
Biola
CSS
HTML
sumber
Itu dapat dilakukan dengan menggunakan kelas dari versi bootstrap 3.x resmi, tanpa css khusus.
Gunakan
input-group-addon
sebelum tag input, di dalaminput-group
kemudian gunakan salah satu dari glyphicons, di sini adalah kodeIni outputnya
Untuk mengkustomisasi lebih lanjut, tambahkan beberapa baris custom css ke file custom.css Anda sendiri (sesuaikan bantalan jika diperlukan)
Dengan membuat latar belakang
input-group-addon
transparan dan membuat gradien kiri dari tag input ke nol input akan memiliki tampilan yang mulus. Ini adalah output yang disesuaikanIni adalah contoh jsbin
Ini akan menyelesaikan masalah custom css yang tumpang tindih dengan label, perataan saat menggunakan
input-lg
dan fokus pada masalah tab.sumber
Berikut ini adalah solusi non-bootstrap yang membuat markup Anda sederhana dengan menanamkan representasi gambar glyphicon langsung di CSS menggunakan pengkodean URI base64.
sumber
Jika Anda menggunakan Fontawesome, Anda dapat melakukan ini:
Hasil
Daftar lengkap unicode dapat ditemukan di referensi ikon The Awesome Font 4.6.3 lengkap
sumber
sumber
Berikut cara lain untuk melakukannya dengan menempatkan glyphicon menggunakan
:before
elemen pseudo di CSS.Demo bekerja di jsFiddle
Untuk HTML ini:
Gunakan CSS ini ( Bootstrap 3.x dan browser berbasis Webkit yang kompatibel )
Seperti yang dikatakan @Frizi, kita harus menambahkan
pointer-events: none;
agar kursor tidak mengganggu fokus input. Semua aturan CSS lainnya adalah untuk memusatkan dan menambahkan spasi yang tepat.Hasil:
sumber
Anda dapat menggunakan Unicode HTML-nya
Jadi untuk menambahkan ikon pengguna, cukup tambahkan

keplaceholder
atribut, atau di mana pun Anda inginkan.Anda mungkin ingin memeriksa lembar contekan ini .
Contoh:
sumber
Saya juga punya satu keputusan untuk kasus ini dengan Bootstrap 3.3.5:
Pada input saya punya sesuatu seperti ini:
sumber
Diuji dengan Bootstrap 4.
Ambil a
form-control
, dan tambahkanis-valid
ke kelasnya. Perhatikan bagaimana kontrol berubah hijau, tetapi yang lebih penting, perhatikan ikon tanda centang di sebelah kanan kontrol? Ini yang kita inginkan!Contoh:
sumber
Jika Anda cukup beruntung hanya membutuhkan browser modern: coba css transform translate. Ini tidak memerlukan pembungkus, dan dapat dikustomisasi sehingga Anda dapat mengizinkan lebih banyak spasi untuk input [type = number] untuk mengakomodasi input spinner, atau memindahkannya ke kiri pegangan.
http://codepen.io/anon/pen/RPRmNq?editors=110
sumber
Anda harus dapat melakukan ini dengan kelas bootstrap yang ada dan sedikit gaya kustom.
Sunting Ikon direferensikan melalui
icon-user
kelas. Jawaban ini ditulis pada saat Bootstrap versi 2. Anda dapat melihat referensi di halaman berikut: http://getbootstrap.com/2.3.2/base-css.html#imagessumber