Saya menggunakan Bootstrap untuk JSP
halaman saya .
Saya ingin menggunakan <fieldset>
dan <legend>
untuk formulir saya. Ini kode saya.
<fieldset class="scheduler-border">
<legend class="scheduler-border">Start Time</legend>
<div class="control-group">
<label class="control-label input-label" for="startTime">Start :</label>
<div class="controls bootstrap-timepicker">
<input type="text" class="datetime" id="startTime" name="startTime" placeholder="Start Time" />
<i class="icon-time"></i>
</div>
</div>
</fieldset>
CSS adalah
fieldset.scheduler-border {
border: 1px groove #ddd !important;
padding: 0 1.4em 1.4em 1.4em !important;
margin: 0 0 1.5em 0 !important;
-webkit-box-shadow: 0px 0px 0px 0px #000;
box-shadow: 0px 0px 0px 0px #000;
}
legend.scheduler-border {
font-size: 1.2em !important;
font-weight: bold !important;
text-align: left !important;
}
Saya mendapatkan output seperti ini
Saya ingin keluaran dengan cara berikut
Saya mencoba menambahkan
border:none;
width:100px;
untuk legend.scheduler-border
di CSS. Dan saya mendapatkan hasil yang diharapkan. Tetapi masalahnya adalah saya ingin menambahkan yang lain <fieldset>
untuk bidang lain. Waktu itu lebar teks dalam legenda adalah masalah karena lebih panjang dari pada 100px
.
Jadi apa yang harus saya lakukan untuk mendapatkan hasil seperti yang saya sebutkan? (Tanpa menyerang teks legenda)
html
css
forms
twitter-bootstrap
Shiju K Babu
sumber
sumber
Jawaban:
Itu karena Bootstrap secara default menetapkan lebar
legend
elemen menjadi 100%. Anda dapat memperbaikinya dengan mengubah Andalegend.scheduler-border
juga menggunakan:Contoh JSFiddle .
Anda juga harus memastikan bahwa stylesheet kustom Anda ditambahkan setelah Bootstrap untuk mencegah Bootstrap mengganti style Anda - meskipun gaya Anda di sini harus memiliki kekhususan yang lebih tinggi.
Anda mungkin juga ingin menambahkannya
margin-bottom:0;
untuk mengurangi jarak antara legenda dan pembagi.sumber
margin-bottom: 20px;
padalegend
, yang mendorongnya di atas batas fieldset, bukannya menempatkannya di telepon. Pengaturanmargin-bottom: 0;
pada kustomlegend.scheduler-border
diperbaiki dengan mudah.Dalam bootstrap 4, jauh lebih mudah untuk memiliki batas pada bidang yang menyatu dengan legenda. Anda tidak perlu custom css untuk mencapainya, itu bisa dilakukan seperti ini:
yang terlihat seperti ini:
sumber
Saya punya masalah ini dan saya pecahkan dengan cara ini:
sumber
Saya memiliki pendekatan yang berbeda, menggunakan panel bootstrap untuk menunjukkannya sedikit lebih kaya. Hanya untuk membantu seseorang dan meningkatkan jawabannya.
Ini akan memberikan tampilan di bawah ini.
Catatan: Kita perlu mengubah gaya untuk menggunakan ukuran tajuk yang berbeda.
sumber
Singkatnya, saya ingin merangkum semua jawaban yang benar di atas. Karena saya harus menghabiskan banyak waktu untuk mencari tahu jawaban mana yang menyelesaikan masalah dan apa yang terjadi di balik layar.
Tampaknya ada dua masalah fieldset dengan bootstrap:
bootstrap
menetapkan lebar kelegend
100%. Itu sebabnya ia menutupi batas atasfieldset
.bottom border
untuklegend
.Jadi, yang perlu kita perbaiki adalah mengatur lebar legenda ke otomatis sebagai berikut:
sumber