CSSレイアウトで中央揃えレイアウトを実現する方法

CSSレイアウトで中央揃えレイアウトを実現する方法

1. 親コンテナーをテーブルに設定し、子をインライン要素に設定します。

テキストを表示するサブコンテンツに適しています。

<!-- css -->
<スタイル>
    #親 {
        高さ: 200px;
        幅: 200ピクセル;
        境界線: 1px 実線の赤;

        display: table-cell; /* テーブルに変換します */
        text-align: center; /* 水平 */
        vertical-align: middle; /* 垂直 */
    }
    #子供 {
        背景色: 青;
        色: 白;

        display: inline; /* 子要素はインラインまたはインラインブロックに設定されます*/
    }
</スタイル>

<!-- html -->
<div id="親">
    <div id="child">コンテンツ</div>
</div>

2. 親コンテナの相対位置と子コンテナの絶対位置を設定し、余白を使用して中央に配置します。

<!-- css -->
<スタイル>
    #親 {
        高さ: 200px;
        幅: 200ピクセル;
        境界線: 1px 実線の赤;

        position: relative; /* 相対的な位置を設定する */
    }
    #子供 {
        高さ: 50px;
        幅: 50px;
        色: 白;
        背景色: 青;

        /* 絶対位置指定、4方向を0に設定後、余白は自動に設定されます */
        位置: 絶対;
        左: 0;
        上: 0;
        右: 0;
        下部: 0;
        マージン: 自動;
    }
</スタイル>

<!-- html -->
<div id="親">
    <div id="child"></div>
</div>

3. 親コンテナーはフレキシブル ボックスに設定され、子コンテナーは余白を設定します。

<!-- css -->
<スタイル>
    #親 {
        高さ: 200px;
        幅: 200ピクセル;
        境界線: 1px 実線の赤;

        display: flex; /* 親要素をフレキシブルボックスに変換する*/
        display: -webkit-flex; /* Safari */
    }
    #子供 {
        高さ: 50px;
        幅: 50px;
        背景色: 青;

        マージン: 自動;
    }
</スタイル>

<!-- html -->
<div id="親">
    <div id="child"></div>
</div>

4. 親コンテナの相対位置、子コンテナの絶対位置、左余白と上余白の負の半分の幅を設定します。

お子様の幅と高さが固定されている場合に適しています。

<!-- css -->
<スタイル>
    #親 {
        高さ: 200px;
        幅: 200ピクセル;
        境界線: 1px 実線の赤;

        position: relative; /* 相対的な位置を設定する */
    }
    #child { /* 子要素が自身の幅と高さを知っている場合 */
        背景色: 青;

        幅: 50px;
        高さ: 50px;
        上マージン: -25px;
        左マージン: -25px;
        位置: 絶対;
        左: 50%;
        上位: 50%;
    }
</スタイル>

<!-- html -->
<div id="親">
    <div id="child"></div>
</div>

5. 親コンテナの相対位置と子コンテナの絶対位置を設定し、変換属性を使用して水平方向と垂直方向を負の半分に設定します。

お子様の幅や身長が一定でない場合に便利です。

<!-- css -->
<スタイル>
    #親 {
        高さ: 200px;
        幅: 200ピクセル;
        境界線: 1px 実線の赤;

        position: relative; /* 相対的な位置を設定する */
    }
    #child { /* 子要素は自身の幅と高さを知らないので、transform の translate を使用します */
        境界線: 1px 青

        位置: 絶対;
        上位: 50%;
        左: 50%;
        -webkit-transform: translate(-50%,-50%) を変換します。
        -ms-transform: 変換(-50%,-50%);
        -o-transform: 変換(-50%,-50%);
        変換: translate(-50%,-50%);
    }
</スタイル>

<!-- html -->
<div id="親">
    <div id="子">
        <div id="コンテンツ">
            コンテンツ 1
            <br/>
            コンテンツ2
        </div>
    </div>
</div>

6. 親をフレキシブル ボックスに設定し、配置プロパティを設定します。

<!-- css -->
<スタイル>
    #親 {
        高さ: 200px;
        幅: 200ピクセル;
        境界線: 1px 実線の赤;

        display: flex; /* 親要素をフレキシブルボックスに変換する*/
        display: -webkit-flex; /* Safari */
        justify-content: center;/* 水平 */
        align-items: center; /* 垂直 */
    }
    #子供 {
        高さ: 50px;
        幅: 50px;
        背景色: 青;
    }
</スタイル>

<!-- html -->
<div id="親">
    <div id="child"></div>
</div>

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

<<:  MySQLユーザー権限管理の詳細な説明

>>:  JS でカルーセル効果を実現する 3 つの簡単な方法

推薦する

HTML フレーム、Iframe、フレームセットの違い

10.4.1 フレームセットとフレームの違い まず、フレームセットとフレームの違いについて説明します...

Logrotate は 2 時間ごとに Catalina.out ログローテーションを実装します

1. Logrotateツールの紹介Logrotate はログファイル管理ツールです。Linux に...

MySQL のソートとページング (order by と limit) と既存の落とし穴

並べ替えクエリ (order by)電子商取引の場合: 今日完了したすべての注文を表示し、取引金額に...

MySQL の日付関数と日付変換およびフォーマット関数

MySQL は、膨大なユーザーベースを持つ無料のリレーショナル データベースです。この記事では、My...

js でオブジェクトを作成するさまざまな方法とその長所と短所のまとめ

目次初期作成方法ファクトリーパターンコンストラクターパターンコンストラクタパターンの最適化プロトタイ...

MybatisはSQLクエリのインターセプションと変更の詳細を実装します

序文インターセプターの機能の 1 つは、特定のメソッドの呼び出しをインターセプトできることです。イン...

MySQL 文字列連結と null 値の設定のためのインスタンス メソッド

#文字列連結 concat(s1,s2); テーブル内の last_name と first_nam...

Linux プログラムの実行中に動的ライブラリをロードできない場合の解決策

Linux でダイナミック ライブラリをロードできません次のような異常事態が発生した場合./test...

MySql8 WITH RECURSIVE 再帰クエリ親子コレクションメソッド

背景コメントに似た機能を開発する場合は、必要に応じてすべてのコメントのサブセットをクエリする必要があ...

Zabbix でフィルターを使用して監視を実装する方法

最近、監視機器の作業をしていたとき、ポートがダウンしているというアラームが常に出ていました。データを...

vsFTP 3.0.3 のコンパイルとインストールの詳細な分析

脆弱性の詳細VSFTP は、GPL に基づいてリリースされた Unix ライクなシステムで使用される...

nginx で Vue プロジェクトをデプロイする方法

今日は nginx サーバーを使用するのですが、vue プロジェクトをサーバーにデプロイする必要もあ...

MySQL MGR 構築時の一般的な問題と解決策

目次01 よくある故障 1 02 よくある欠陥 2 03 よくある欠陥 3 04 よくある欠陥 4 ...

Harborを使用してプライベートDockerリポジトリを構築する方法

目次1. オープンソースの倉庫管理ツール Harbor 2 インストール2.1 DockerとDoc...

Vue2.x の応答性の簡単な説明と例

1. Vue レスポンシブの使用法を確認する​ Vue の応答性は、私たち全員がよく知っています。 ...