我尝试使用form-floating来获得浮动标签的外观,但当我将form-floating类放入row中时,页边距变得混乱。
为了便于比较,这里没有row (标签看起来很好):
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"/>
<div class="container">
<div class="form-floating col-6 mb-3 mt-3 ml-auto">
<input type="text" class="form-control" id="name">
<label for="name">Name</label>
</div>
</div>
这是row -注意"Name“标签现在是如何接触到输入的左侧的:
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet"/>
<div class="container">
<div class="row">
<div class="form-floating col-6 mb-3 mt-3 ml-auto">
<input type="text" class="form-control" id="name">
<label for="name">Name</label>
</div>
</div>
</div>
在这个最小的示例中,可能不需要row,但我尝试将表单放在左边一栏,而将其他内容放在右边。我怎么才能让它工作呢?
发布于 2021-09-21 08:44:33
问题出在网格样式上。请参见:
.row {
/* --bs-gutter-x: 1.5rem; */
/* bs gutter overwrites the form gutter! */
--bs-gutter-y: 0;
display: flex;
flex-wrap: wrap;
margin-top: calc(var(--bs-gutter-y) * -1);
margin-right: calc(var(--bs-gutter-x) * -.5);
margin-left: calc(var(--bs-gutter-x) * -.5);
}在我的浏览器上工作的解决方案:
将包含的div元素上的间距覆盖回它们的原始值。
<div class="form-floating col-6 mb-3 mt-3 ml-auto gx-1">
<input type="text" class="form-control" id="name">
<label for="name">Name</label>
</div>https://stackoverflow.com/questions/69265379
复制相似问题