中央ぞろえにしたい

水平方向の中央揃え

インライン要素か、ブロック要素かによって中央ぞろえにする方法が異なります。

インライン要素では、「text-align: center;」を指定します。

インライン要素の代表例は以下のタグです。

<a>、<img>、<input>など

ブロック要素では、「margin: 0 auto;」を指定します。

ブロック要素の代表例は以下のタグです。

<div>、<form>、<h1>-<h6>、<p>、<table>など

インライン要素を中央ぞろえにする場合

<!DOCTYPE html>
<html>
    <head>
        <title>text-align-center.html</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <style>
            .center{
                text-align: center;
            }
        </style>
    </head>
    <body>
        <div class="center">
            <button>ボタン</button>
            <img src="https://picsum.photos/200/300" alt="Lorem Picsum">
        </div>
    </body>
</html>

ブロック要素を中央ぞろえにする場合

この場合、幅がないと中央揃えにならないためwidth: 250pxとしています。

<!DOCTYPE html>
<html>
    <head>
        <title>margin-0-auto.html</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <style>
            .center{
                width: 250px; 
                margin: 0 auto;
            }
        </style>
    </head>
    <body>
        <div class="center">
            <h2>フォームの中央揃え</h2>
            <form>
                <input type="text">
                <button type="submit">submit</button>
            </form>
        </div>
    </body>
</html>

Bootstrap4を使って中央ぞろえにする場合

横方向のマージンをautoにすることで中央揃えにできます。

この場合も横幅が必要です。

<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> 

        <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"> 

        <title>centered.html</title>
    </head>
    <body>
        <div class="mx-auto" style="width: 200px;">
            中央揃え
        </div>
    </body>
</html>

上下左右中央揃え

<!doctype html>
<html>
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> 
        <style>
            .wrapper {
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
            }
        </style>
        <title>in_the_center.html</title>
    </head>
    <body>
        <div class="wrapper">
            <img src="https://picsum.photos/200">
        </div>
    </body>
</html>

中央ぞろえにしたい 最後までお読みいただきありがとうございます。

投稿者プロフィール

山崎講師
山崎講師代表取締役
セイ・コンサルティング・グループ株式会社代表取締役。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!