1. ホーム
  2. ハイパーリンク

[解決済み] [Solved] divをコンテナの一番下に配置するには?

2022-03-23 22:30:06

質問

次のようなHTMLがあるとする。

<div id="container">
  <!-- Other elements here -->
  <div id="copyright">
    Copyright Foo web designs
  </div>
</div>

希望する #copyright の下にくっつくように #container . 絶対位置決めを使用せずに実現できますか?

どのように解決するのですか?

フレックスボックスのアプローチ

対応ブラウザ を使用すると、以下のようになります。

サンプルはこちら

.parent {
  display: flex;
  flex-direction: column;
}
.child {
  margin-top: auto;
}

.parent {
  height: 100px;
  border: 5px solid #000;
  display: flex;
  flex-direction: column;
}
.child {
  height: 40px;
  width: 100%;
  background: #f00;
  margin-top: auto;
}
<div class="parent">
  <div class="child">Align to the bottom</div>
</div>


上記の解決策がより柔軟であると思われますが、別の解決策を紹介します。

例はこちら

.parent {
  display: flex;
}
.child {
  align-self: flex-end;
}

.parent {
  height: 100px;
  border: 5px solid #000;
  display: flex;
}
.child {
  height: 40px;
  width: 100%;
  background: #f00;
  align-self: flex-end;
}
<div class="parent">
  <div class="child">Align to the bottom</div>
</div>


余談ですが、ベンダープレフィックスを追加すると、さらに対応できるかもしれません。