垂直对齐a div 在a Bootstrap 4.1 container-fluid > row > col
Vertically align a div in the middle of a Bootstrap 4.1 container-fluid > row > col
我正在尝试将 Bootstrap 4.1 的 align-middle 应用到 row
中的 col
。但它里面的内容似乎与顶部保持一致。这是我的代码:
<body class="d-flex">
<div class="container-fluid">
<a class="my-container" href="#">
<div class="row">
<div class="col flex-grow-1">
Line 1<br>Line 2<br>Line 3
</div>
<div class="col-auto text-right align-middle">
<i class="fas fa-chevron-right"></i>
</div>
</div>
</a>
</div>
</body>
这是显示结果的片段:
<link href="https://use.fontawesome.com/releases/v5.4.2/css/all.css" rel="stylesheet"/>
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/>
<body class="d-flex">
<div class="container-fluid">
<a class="my-container" href="#">
<div class="row">
<div class="col flex-grow-1">
Line 1<br>Line 2<br>Line 3
</div>
<div class="col-auto text-right align-middle">
<i class="fas fa-chevron-right"></i>
</div>
</div>
</a>
</div>
</body>
如何正确对齐图标?
尝试用 span
包裹你的 i
并让 span
拥有 align-middle
class
您可以给 row
一个固定的高度,然后相应地调整您的 col
行高。请看下面的代码:
html:
<div class="container-fluid">
<a class="my-container" href="#">
<div class="row">
<div class="col flex-grow-1">
Line 1<br>Line 2<br>Line 3
</div>
<div class="col-auto text-right">
<i class="fas fa-chevron-right"></i>
</div>
</div>
</a>
css:
.row {
height: 150px;
}
.col {
line-height: 50px;
}
如果您的列中只有一行,您可以使列的行高与行高相同。您现在有三行,所以将行高除以三。
您可以在列上使用Bootstrap 4 的my-auto
class。这是代码:
html:
<div class="container-fluid">
<a class="my-container" href="#">
<div class="row">
<div class="col flex-grow-1 my-auto">
<p>line 1</p>
<p>line 1</p>
<p>line 1</p>
</div>
<div class="col-auto text-right">
<i class="fas fa-chevron-right"></i>
</div>
css:
p {
margin: 16px;
}
该段落的底部边距为 1rem
,因此您可以删除边距或像我一样只给它一个整体边距。这对我来说很好。
我正在尝试将 Bootstrap 4.1 的 align-middle 应用到 row
中的 col
。但它里面的内容似乎与顶部保持一致。这是我的代码:
<body class="d-flex">
<div class="container-fluid">
<a class="my-container" href="#">
<div class="row">
<div class="col flex-grow-1">
Line 1<br>Line 2<br>Line 3
</div>
<div class="col-auto text-right align-middle">
<i class="fas fa-chevron-right"></i>
</div>
</div>
</a>
</div>
</body>
这是显示结果的片段:
<link href="https://use.fontawesome.com/releases/v5.4.2/css/all.css" rel="stylesheet"/>
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/>
<body class="d-flex">
<div class="container-fluid">
<a class="my-container" href="#">
<div class="row">
<div class="col flex-grow-1">
Line 1<br>Line 2<br>Line 3
</div>
<div class="col-auto text-right align-middle">
<i class="fas fa-chevron-right"></i>
</div>
</div>
</a>
</div>
</body>
如何正确对齐图标?
尝试用 span
包裹你的 i
并让 span
拥有 align-middle
class
您可以给 row
一个固定的高度,然后相应地调整您的 col
行高。请看下面的代码:
html:
<div class="container-fluid">
<a class="my-container" href="#">
<div class="row">
<div class="col flex-grow-1">
Line 1<br>Line 2<br>Line 3
</div>
<div class="col-auto text-right">
<i class="fas fa-chevron-right"></i>
</div>
</div>
</a>
css:
.row {
height: 150px;
}
.col {
line-height: 50px;
}
如果您的列中只有一行,您可以使列的行高与行高相同。您现在有三行,所以将行高除以三。
您可以在列上使用Bootstrap 4 的my-auto
class。这是代码:
html:
<div class="container-fluid">
<a class="my-container" href="#">
<div class="row">
<div class="col flex-grow-1 my-auto">
<p>line 1</p>
<p>line 1</p>
<p>line 1</p>
</div>
<div class="col-auto text-right">
<i class="fas fa-chevron-right"></i>
</div>
css:
p {
margin: 16px;
}
该段落的底部边距为 1rem
,因此您可以删除边距或像我一样只给它一个整体边距。这对我来说很好。