我正在为我的 JSP
页面使用 Bootstrap。
我想使用 <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
。
那么我该怎么做才能像我提到的那样获得输出呢? (不删除图例文字)
原文由 Shiju 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是因为默认情况下,Bootstrap 将
legend
元素的宽度设置为 100%。您可以通过更改legend.scheduler-border
来解决此问题,同时使用:JSFiddle 示例。
您还需要确保在 Bootstrap 之后 添加您的自定义样式表,以防止 Bootstrap 覆盖您的样式 - 尽管您的样式在这里应该具有更高的特异性。
您可能还想向其中添加
margin-bottom:0;
以减少图例和分隔线之间的差距。