【发布时间】:2018-08-03 12:06:32
【问题描述】:
我正在尝试使用 Bootstrap 制作响应式表单,但“单元格”(Bootstrap 网格元素)高度破坏了行对齐。而且由于这应该是响应式的,我认为我不能定义 <div class="row"> 来强制一个新行(因为我不知道这些行将是什么)。
在大多数情况下,输入高度大于标签并且没有问题,但如果标签绕到第二行,它的高度就会大于输入,并且下一行网格元素从那里开始。
有没有办法解决这个问题?我已经搜索并只找到了固定高度的行(有时称为固定高度的列),但这些似乎是黑客行为,并且浏览器并不普遍支持。当然,我还没有找到一种 Bootstrap 方法来执行此操作。
抱歉,提供的截图没有在演示框架中中断,它需要全屏运行。调整浏览器大小以查看它在大多数尺寸下的中断,并在一个小子集中工作(正好是 sn-p 输出的大小)。
/*
Fugly border to clearly illustrate the problem
*/
label {
border: 1px solid;
}
div {
border: 1px solid;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"/>
<div class="container">
<label class="col-xs-4 col-sm-2 col-lg-1 control-label text-right" for="Field1">Long label text goes here:</label>
<div class="col-xs-8 col-sm-4 col-lg-3">
<input class="form-control" id="Field1" placeholder="Field1" type="text"/>
</div>
<label class="col-xs-4 col-sm-2 col-lg-1 control-label text-right" for="Field2">Short label:</label>
<div class="col-xs-8 col-sm-4 col-lg-3">
<input class="form-control" id="Field2" placeholder="Field2" type="text"/>
</div>
<label class="col-xs-4 col-sm-2 col-lg-1 control-label text-right" for="Field3">Short label:</label>
<div class="col-xs-8 col-sm-10 col-lg-3">
<input class="form-control" id="Field3" placeholder="Field3" type="text" runat="server" />
</div>
</div>
【问题讨论】:
标签: twitter-bootstrap twitter-bootstrap-3 grid-layout word-wrap