【position】CSSで親要素の中の子要素を中央配置する方法

ある範囲内でその中の文字や画像を中央配置したい時に便利なCSSテクニックになります。

HTML

親要素blockの中の子要素pを中央配置していきます。

<div class="block">
<p>テキスト</p>
</div>

CSS

上下左右中央に寄せる場合

.block {
position: relative;
}

.block p {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
}

上下を中央に寄せる場合

.block p {
position: absolute;
top: 50%;
left: 0%;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
}

左右を中央に寄せる場合

.block p {
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
}

 

例えば、左右に画像と文字を並べたい時、隣の画像に対して縦方向で中央に揃えたい時などに便利ですね。

以上になります。

代表取締役写真

この記事を書いた人|横内 隆志

スキマデザイン株式会社 代表取締役。WEBディレクター・デザイナーとして、ホームページの企画・情報設計・デザイン・SEO・運用まで、WEB制作全般に携わっています。長年の制作経験をもとに、ユーザー目線で情報を整理し、企業やサービスの魅力がきちんと伝わるWEBサイトをご提案しています。愛媛・松山を中心に活動しています。