gpt4 book ai didi

html - 带标签的 Twitter Bootstrap 3 内联表单

转载 作者:技术小花猫 更新时间:2023-10-29 11:44:15 29 4
gpt4 key购买 nike

到处搜索后,我无法确切地看到我如何设计具有以下设计的内联表单:(尽可能使用 bootstrap 3 类而不是 css 自定义)

当用户使用宽屏幕时:

 Form-Legend

LabelFieldA: InputFieldA LabelFieldB: InputFieldB LabelFieldC: InputFieldC <Submit Button>

当用户的屏幕较小时:

Form-Legend

LabelFieldA: InputFieldA LabelFieldB: InputFieldB

LabelFieldC: InputFieldC <Submit Button>

想法是设计最初将所有字段放在一行中,如果它不适合控件将跳到下一行,但将标签 + 字段保持在一起。

另外,如果有办法让每个 Label + Input 之间的间距大于 Label 与其 Field 之间的间距。

最后,如果有一种方法可以在 Label + Field 跳转到下一行时增加垂直边距。

最佳答案

选项#1:固定列

您可以使用混合col-xs-12col-sm-6col-lg-3 的结构来得到 1 , 2 或 4 列。在您的 form-group 中,请记住使用 col-xs-4col-xs-8 修复标签/输入大小:

<div class="container">
<form class="form form-inline" role="form">

<legend>Form legend</legend>

<div class="form-group col-xs-12 col-sm-6 col-lg-3">
<label for="InputFieldA" class="col-xs-4">Field A</label>
<div class="col-xs-8">
<input type="text" class="form-control" id="InputFieldA" placeholder="InputFieldA">
</div>
</div>

<div class="form-group col-xs-12 col-sm-6 col-lg-3">
<label for="InputFieldB" class="col-xs-4">Field B</label>
<div class="col-xs-8">
<input type="text" class="form-control" id="InputFieldB" placeholder="InputFieldB">
</div>
</div>

<div class="form-group col-xs-12 col-sm-6 col-lg-3">
<label for="InputFieldC" class="col-xs-4">Field C</label>
<div class="col-xs-8">
<input type="text" class="form-control" id="InputFieldC" placeholder="InputFieldC">
</div>
</div>

<div class="form-group col-xs-12 col-sm-6 col-lg-3">
<button type="submit" class="btn btn-default col-xs-8 col-xs-offset-4">Submit Button</button>
</div>

</form>
</div>

你还需要一些 CSS :

// get a larger input, and align it with submit button
.form-inline .form-group > div.col-xs-8 {
padding-left: 0;
padding-right: 0;
}
// vertical align label
.form-inline label {
line-height: 34px;
}
// force inline control to fit container width
// http://getbootstrap.com/css/#forms-inline
.form-inline .form-control {
width: 100%;
}
// Reset margin-bottom for our multiline form
@media (min-width: 768px) {
.form-inline .form-group {
margin-bottom: 15px;
}
}

您可以根据需要添加任意数量的输入。

enter image description here

Bootply

选项#2:流体柱

为了能够不关心每行的字段数,你可以使用这个结构:

<div class="container">
<form class="form form-inline form-multiline" role="form">

<legend>Form legend</legend>

<div class="form-group">
<label for="InputFieldA">Field A</label>
<input type="text" class="form-control" id="InputFieldA" placeholder="InputFieldA">
</div>

<div class="form-group">
<label for="InputFieldB">Very Long Label For Field B</label>
<input type="text" class="form-control" id="InputFieldB" placeholder="InputFieldB">
</div>

<div class="form-group">
<label for="InputFieldC">F. C</label>
<input type="text" class="form-control" id="InputFieldC" placeholder="InputFieldC">
</div>

<div class="form-group">
<label for="InputFieldD">Very Long Label For Field D</label>
<input type="text" class="form-control" id="InputFieldD" placeholder="InputFieldD">
</div>

<div class="form-group">
<label for="InputFieldE">Very Long Label For Field E</label>
<input type="text" class="form-control" id="InputFieldE" placeholder="InputFieldE">
</div>

<div class="form-group">
<label for="InputFieldF">Field F</label>
<input type="text" class="form-control" id="InputFieldF" placeholder="InputFieldF">
</div>

<div class="form-group">
<button type="submit" class="btn btn-default">Submit Button</button>
</div>

</form>
</div>

还有一些 CSS 行来修复边距:

.form-multiline .form-group {
margin-bottom: 15px;
margin-right: 30px;
}
.form-multiline label,
.form-multiline .form-control {
margin-right: 15px;
}

enter image description here

Bootply

关于html - 带标签的 Twitter Bootstrap 3 内联表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21935933/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com