如何在 div bootstrap 中将 div 与底部对齐

Posted

技术标签:

【中文标题】如何在 div bootstrap 中将 div 与底部对齐【英文标题】:How to align div to bottom inside div bootstrap 【发布时间】:2018-04-03 07:01:18 【问题描述】:

html, body, .sidebar-container, .sidebar-row 
    height: 100%;


.sidebar 
    background-color: #2C3544;


@media (min-width: 992px) 
    .sidebar 
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        z-index: 1000;
        display: block;
        background-color: #2C3544;
    

img
    margin: auto;
    display: block;

.sidebar-image
    margin-top: 15px;

.sidebar-items
    margin-top: 15px;
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.3/umd/popper.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/css/bootstrap.min.css" rel="stylesheet"/>

<div class="container-fluid sidebar-container">
    <div class="row sidebar-row">
        <div class="col-md-2 sidebar">
            <div class="container-fluid">
                <div class="col-md-12 sidebar-image">
                    <img src="assets/logo-white.png"  />
                </div>
            </div>
            <div class="row sidebar-items">
                <div class="col-md-12">
                    <ul class="list-group">
                        <li class="list-group-item">Dashboard</li>
                        <li class="list-group-item">Projects</li>
                        <li class="list-group-item">Statistics</li>
                    </ul>
                </div>
            </div>
            <div class="row align-bottom">
                hafldjalfjsdlfsjdlfsjlfs
            </div>
        </div>
        <div class="col-md-10 offset-md-2 content">
            Main Content
        </div>
    </div>
</div>

我编写了这段 HTML/CSS 代码,试图将一个 div 与另一个 div 内的底部对齐:

我想将col-md-2 中的最后一个 div 与高度为 100% 的 sidebar-container 的底部对齐。我尝试添加引导类align-bottom,但不知何故这不起作用。谁能帮帮我?

【问题讨论】:

Bootstrap 3 Align Text To Bottom of Div的可能重复 @Rob Nah 这是将 div 内的 div 而非文本对齐到 div 的底部 文本在 div 内,但您的问题还有许多其他重复项。你在发帖前搜索过吗? @Rob 这不是关于文本,而是关于将另一个 DIV 中的 DIV 对齐到底部。是的,我搜索了所以 【参考方案1】:

您也可以只使用 bootstrap flexbox 来执行此操作。

<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p" crossorigin="anonymous"></script>

<div class="d-flex align-items-start flex-column bg-success" style="height: 200px;">
  <div class="mb-auto p-2">Flex item</div>
  <div class="p-2">Flex item</div>
  <div class="p-2">Flex item</div>
</div>

<div class="d-flex align-items-end flex-column bg-info" style="height: 200px;">
  <div class="p-2">Flex item</div>
  <div class="p-2">Flex item</div>
  <div class="mt-auto p-2">Flex item</div>
</div>

将项目左对齐或右对齐确保在父元素中包含整个d-flex align-items-end flex-column,并根据您希望它左对齐还是右对齐来选择开始或结束。 p>

将项目底部对齐然后,在要粘贴到父级底部的 div 上使用 mt-auto

【讨论】:

有没有办法做到这一点但与父 div 的中心对齐? 文档没有提供在中间对齐的选项,但您可以尝试 justify-content-center。我觉得这可能行不通。需要查看您的代码以了解您要执行的操作。【参考方案2】:

假设您有 2 个 div。分区 A(外部)和分区 B(内部)。要完成您的任务,只需将 Div B 代码放在 Div A 代码中,然后在 Div B css 类中添加此

position : absolute
bottom   : 0

【讨论】:

问题:但是内部 Div 不再居中。它将转到左下角。 因此,如果您使用的是bootstrap4,那么只需在外部 div 上添加类 justify-content-center。这将使内部 div 居中

以上是关于如何在 div bootstrap 中将 div 与底部对齐的主要内容,如果未能解决你的问题,请参考以下文章

Bootstrap 3 将图像高度自动设置为 div 高度

在引导程序 3 中将按钮元素与 div 的底部对齐

如何在 Bootstrap 列中垂直居中 div? [复制]

如何在 Bootstrap 4 中垂直居中 div? [复制]

如何在后面的c#代码中将div添加到容器div

如何在 Bootstrap 3 div 中放置图像?