Saya membuat tooltip menggunakan Twitter Bootstrap.
Tip alat ditampilkan dengan tiga garis. Namun, saya ingin menampilkan tooltip hanya dengan satu baris.
Bagaimana cara mengubah lebar ujung alat? Apakah ini khusus untuk Bootstrap Twitter atau untuk tooltips sendiri?
twitter-bootstrap
tooltip
onejigtwojig
sumber
sumber
Jawaban:
Cukup ganti bootstrap.css
Nilai default di BS2 adalah max-width: 200px; Sehingga Anda dapat meningkatkannya dengan apa pun yang sesuai dengan kebutuhan Anda.
sumber
max-width
tidak bekerja untuk saya, tetapiwidth
tidak. Diuji pada Chrome dan IE9. Ada petunjuk?max-width
dan tidak melihat jawaban @ knobli di bawah ini, silakan gunakandata-container="body"
di elemen HTML Anda.Di BS3
sumber
Saya menyadari ini adalah pertanyaan yang sangat lama, tetapi jika saya mendarat di sini, begitu juga yang lain. Jadi saya pikir saya menimbang.
Jika Anda ingin tooltip hanya responsif terhadap satu baris tanpa memperhatikan berapa banyak konten yang Anda tambahkan, lebar harus fleksibel. Namun, Bootstrap benar-benar memulai tooltip ke lebar, jadi Anda harus setidaknya menyatakan berapa lebar itu dan membuatnya fleksibel dari ukuran itu ke atas. Inilah yang saya rekomendasikan:
Yang
min-width
menyatakan ukuran awal. Berbeda dengan max-width, seperti yang disarankan beberapa orang, yang menyatakan lebar pemberhentian . Menurut pertanyaan Anda, Anda tidak boleh mendeklarasikan lebar akhir atau konten tooltip Anda pada akhirnya akan membungkus pada titik itu. Sebagai gantinya, Anda menggunakan lebar tak terbatas atau lebar fleksibel.max-width: 100%;
akan memastikan bahwa setelah tooltip dimulai pada lebar 100px, itu akan tumbuh dan menyesuaikan dengan konten Anda terlepas dari jumlah konten yang Anda miliki di dalamnya.TETAP DI PIKIRAN Tooltips tidak dimaksudkan untuk membawa banyak konten. Ini bisa terlihat funky jika Anda memiliki string panjang di seluruh layar. Dan itu pasti akan berdampak pada tampilan responsif Anda, khususnya smartphone (lebar 320px).
Saya akan merekomendasikan dua solusi untuk menyempurnakan ini:
data-placement:right
, konten tooltip Anda tidak akan terlihat di smartphone (karenanya mengapa bootstrap awalnya dirancang mereka untuk responsif terhadap kontennya dan memungkinkannya untuk membungkus)@media
kueri untuk mereset tooltip Anda agar sesuai dengan tampilan smartphone. Seperti ini:Demo saya DI SINI menunjukkan fleksibilitas dan daya tanggap pada tooltips sesuai dengan ukuran konten dan ukuran tampilan perangkat juga
sumber
Anda harus menimpa properti menggunakan css Anda sendiri. seperti itu:
pemilih memilih div dimana tooltip dipegang (tooltip ditambahkan oleh javascript dan biasanya bukan milik wadah apa pun.
sumber
Tentukan lebar maksimum dengan "penting!" dan gunakan data-container = "body"
File CSS
Tag HTML
Skrip JS
sumber
data-container="body"
sendirian melakukannya untuk saya. Terima kasih!Untuk memperbaiki masalah lebar, gunakan kode berikut sebagai gantinya.
contoh: http://eureka.ykyuen.info/2014/10/08/bootstrap-3-tooltip-width/
sumber
Solusi lain; buat kelas baru (mis. tooltip-wide) di CSS:
Gunakan kelas ini pada elemen di mana Anda ingin tooltips lebar:
Bootstrap tooltip menghasilkan markup di bawah elemen yang mengandung tooltip, sehingga HTML benar-benar terlihat seperti ini setelah markup dihasilkan:
CSS menggunakan ini untuk mengakses elemen yang berdekatan (+) ke .tooltip-wide, dan dari sana menavigasi ke .tooltip-inner, sebelum menerapkan atribut max-width. Ini hanya akan mempengaruhi elemen menggunakan kelas .tooltip-wide, semua tooltips lainnya akan tetap tidak berubah.
sumber
data-template="<div class='tooltip' role='tooltip'><div class='arrow'></div><div class='tooltip-inner tooltip-wide'></div></div>"
dan.tooltip-wide { max-width: 100%; min-width: 80%; }
satu dapat membuatnya bekerja.Anda dapat mengedit kelas .tooltip-inner css di bootstrap.css. Lebar maksimum default adalah 200px. Anda dapat mengubah lebar maks ke ukuran yang Anda inginkan.
sumber
setelah beberapa percobaan, ini bekerja paling baik untuk saya:
sumber
Ganti saja default
max-width
ke apa pun yang sesuai dengan kebutuhan Anda.Ketika max-width tidak berfungsi (opsi 1)
Jika max-width tidak berfungsi, Anda bisa menggunakan set width sebagai gantinya. Ini bagus, tetapi tooltips Anda tidak akan lagi mengubah ukuran agar sesuai dengan teks. Jika Anda tidak suka itu, lewati ke opsi 2.
Berurusan dengan benar dengan wadah kecil (opsi 2)
Karena Bootstrap menambahkan tooltip sebagai saudara target, ia dibatasi oleh elemen yang mengandung. Jika elemen yang mengandung lebih kecil dari Anda
max-width
, makamax-width
tidak akan berfungsi.Jadi, ketika
max-width
tidak berfungsi, Anda hanya perlu mengubahcontainer
:Kiat Pro: wadah dapat berupa pemilih mana saja, yang bagus bila Anda hanya ingin mengganti gaya pada beberapa tooltips.
sumber
Atur kelas ke div tooltip utama dan untuk tooltip batin
sumber
Silakan lihat posting di bawah ini. Jawaban cmcculloh bekerja untuk saya. https://stackoverflow.com/posts/31683500/edit
Seperti yang ditunjukkan dalam dokumentasi , cara termudah untuk memastikan bahwa tooltip Anda tidak membungkus sama sekali adalah menggunakan
Dengan ini, Anda tidak perlu khawatir tentang nilai dimensi atau semacamnya. Masalah utama adalah jika Anda memiliki baris teks yang sangat panjang, teks itu hanya akan keluar dari layar (seperti yang Anda lihat pada Contoh JSBin ).
sumber
BS3:
sumber
Pada Bootstrap 4, dan jika Anda tidak ingin mengubah semua lebar tooltips, Anda dapat menggunakan templat khusus untuk tooltip yang Anda inginkan:
sumber
Coba kode ini,
sumber
Saya memiliki masalah yang sama, namun semua jawaban populer - untuk mengubah
.tooltip-inner{width}
tugas saya gagal melakukan pekerjaan dengan benar. Adapun tooltips lainnya (yaitu lebih pendek) lebar tetap terlalu besar. Saya malas menulis templat / kelas html terpisah untuk zillions tooltips, jadi saya hanya mengganti semua spasi antar kata dengan
di setiap baris teks.sumber
Saya perlu menyesuaikan lebar beberapa tooltips. Tapi bukan pengaturan keseluruhan. Jadi saya akhirnya melakukan ini:
CSS
JQuery
Html
sumber
Mengatur max-lebar tooltip-inner kelas tidak bekerja untuk saya , saya menggunakan bootstrap 3.2
Beberapa cara mengatur max-width hanya berfungsi jika Anda mengatur lebar kelas induk (.tooltip).
Tapi kemudian semua tooltips menjadi ukuran yang Anda tentukan. Jadi, inilah solusi saya:
tambahkan Lebar ke kelas induk:
Kemudian Anda menambahkan lebar-max dan mengubah tampilan menjadi inline-block, sehingga tidak akan menempati seluruh ruang
sumber
Milik saya di mana semua panjang variabel dan lebar max yang ditetapkan tidak akan bekerja untuk saya, jadi mengatur css saya hingga 100% berfungsi seperti mantra.
sumber
Dengan Bootstrap 4 saya gunakan
sumber
di bootstrap 3.0.3 Anda dapat melakukannya dengan memodifikasi kelas popover
sumber