Я использую Bootstrap для своей JSP
страницы.
Я хочу использовать <fieldset>
и <legend>
для моей формы. Это мой код
<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 это
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;
}
Я получаю вывод, как это
Я хочу вывод следующим образом
Я пытался добавить
border:none;
width:100px;
чтобы legend.scheduler-border
в CSS. И я получаю ожидаемый результат. Но проблема в том, что я хотел бы добавить еще один <fieldset>
для других полей. В то время ширина текста в легенде является проблемой, поскольку она длиннее, чем 100px
.
Так что мне делать, чтобы получить результат, как я уже упоминал? (Не ударяя текст легенды)
html
css
forms
twitter-bootstrap
Шиджу К Бабу
источник
источник
Ответы:
Это потому, что Bootstrap по умолчанию устанавливает ширину
legend
элемента на 100%. Вы можете исправить это, изменивlegend.scheduler-border
также использовать:Пример JSFiddle .
Вам также нужно будет убедиться, что ваша пользовательская таблица стилей добавляется после Bootstrap, чтобы Bootstrap не перекрывал ваш стиль - хотя ваши стили должны иметь более высокую специфичность.
Вы также можете добавить
margin-bottom:0;
к нему, чтобы уменьшить разрыв между легендой и разделителем.источник
margin-bottom: 20px;
наlegend
, который выдвинул его выше границы набора полей , вместо того, чтобы поместить его на линию. Установкаmargin-bottom: 0;
на кастомlegend.scheduler-border
исправлена.В начальной загрузке 4 намного легче иметь границу на наборе полей, которая сочетается с легендой. Вам не нужно настраивать CSS для этого, это можно сделать так:
который выглядит так:
источник
У меня была эта проблема, и я решил следующим образом:
источник
У меня был другой подход, я использовал панель начальной загрузки, чтобы показать ее немного более насыщенной. Просто чтобы помочь кому-то и улучшить ответ.
Это даст ниже взгляд.
Примечание: нам нужно изменить стили, чтобы использовать другой размер заголовка.
источник
Просто хотел бы кратко изложить все правильные ответы выше. Потому что мне пришлось потратить много времени, чтобы выяснить, какой ответ решает проблему и что происходит за кулисами.
Кажется, есть две проблемы fieldset с начальной загрузкой:
bootstrap
Устанавливает ширину доlegend
100%. Вот почему он перекрывает верхнюю границуfieldset
.bottom border
дляlegend
.Итак, все что нам нужно исправить это установить ширину легенды в авто следующим образом:
источник