【CSS】position:absoluteの上下左右中央配置マニュアル
cssのposition:absoluteで、上下、左右、中央それぞれに配置するためのcssソースコードをまとめました。
それぞれ、親要素、子要素のサイズを問わず、可変でも対応するため、ご活用頂けると嬉しいです。
各項目毎に、そのcssを適用したデモも併せて載せてあります。
各デモの親要素、子要素のプロパティ、HTMLソースは下記のようになっています。
.parent{ position: relative; width: 100%; height: 300px; border: 2px solid #CCC; box-sizing: border-box; } .parent > div{ box-sizing: border-box; width: 50px; height: 50px; background-color: red; /* デモ部分は、ここに位置プロパティを入れています position: absolute; top: 0; left: 0; */ }
<div class="parent"> <div></div> </div>
左上に配置する
.parent > div{ position: absolute; top: 0; left: 0; }
中央上に配置する
.parent > div{ position: absolute; left: 50%; top: 0; transform: translateX(-50%); -webkit-transform: translateX(-50%); }
右上に配置する
.parent > div{ position: absolute; right: 0; top: 0; }
左中央に配置する
.parent > div{ position: absolute; top: 50%; left: 0; transform: translateY(-50%); -webkit-transform: translateY(-50%); }
上下左右中央に配置する
.parent > div{ position: absolute; top: 50%; left: 50%; transform: translateY(-50%) translateX(-50%); -webkit-transform: translateY(-50%) translateX(-50%); }
右中央に配置する
.parent > div{ top: 50%; right: 0; transform: translateY(-50%); -webkit-transform: translateY(-50%); }
左下に配置する
.parent > div{ position: absolute; bottom: 0; left: 0; }
中央下に配置する
.parent > div{ position: absolute; left: 50%; bottom: 0; transform: translateX(-50%); -webkit-transform: translateX(-50%); }
右下に配置する
.parent > div{ position: absolute; right: 0; bottom: 0; }
ディスカッション
コメント一覧
まだ、コメントがありません