我希望这些项目水平对齐

时间:2017-08-24 07:56:02

标签: html css react-bootstrap

我正在使用react-bootstrap,并在div中放入3个项目。你觉得没什么特别的。除了水平对齐完全没有打击。

horizontal-align

我可以通过改变很多css来修复它,但我想先了解为什么会发生这种情况。我想我错过了一些基本的东西。

阵营

<div className="InputRow">
  <Label className="inline">New customer: </Label>
  <Field className="inline" onChange={() => this.onChange()} />
  <Button className="inline">Ok</Button>
</div>

的CSS

.inline 
{
    display: inline-block;
}
.InputRow
{
    height: 32px;
}

3 个答案:

答案 0 :(得分:1)

尝试使用flexbox

.InputRow {
  display: flex;
  align-items: center;
  height: 32px;
}
<div className="InputRow">
  <Label>New customer: </Label>
  <Field onChange={() => this.onChange()} />
  <Button>Ok</Button>
</div>

答案 1 :(得分:1)

您可以使用Bootstrap网格布局来连续对齐项目。 https://react-bootstrap.github.io/components.html#page-layout

只需使用React-Bootstrap中的<Row><Col>

答案 2 :(得分:0)

只需提供.inline个元素height:100%;,即可获得完全父母的身高:

.inline {
  display: inline-block;
  height: 100%;
}

.InputRow {
  height: 32px;
}

<强>演示:

.inline {
  display: inline-block;
  height: 100%;
}

.InputRow {
  height: 32px;
}
<div className="InputRow">
  <Label className="inline">New customer: </Label>
  <Field className="inline" onChange={()=> this.onChange()} />
    <Button className="inline">Ok</Button>
</div>