【1】中央の要素の幅と高さを知る 絶対値 + 負のマージン コードの実装 .wrapBox5{ 幅: 300ピクセル; 高さ: 300px; border:1px 赤一色; 位置: 相対的; } .wrapItem5{ 幅: 100ピクセル; 高さ: 50px; 位置: 絶対; 背景:黄色; 上位: 50%; 残り:50%; 上マージン: -25px; 左マージン: -50px; } 運用結果 絶対 + マージン 自動 コードの実装 .wrapBox{ 幅: 300ピクセル; 高さ: 300px; 背景: 黄色; 位置: 相対的; } .wrapItem{ 幅: 100ピクセル; 高さ: 50px; 背景:緑; 表示: インラインブロック; 位置: 絶対; 上: 0px; 下:0px; 左: 0px; 右: 0px; マージン:自動; } 絶対値 + 計算 コードの実装 .wrapBox6{ 幅: 300ピクセル; 高さ: 300px; border:1px 緑一色; 位置: 相対的; } .wrapItem6{ 幅: 100ピクセル; 高さ: 50px; 位置: 絶対; 背景:黄色; 上: calc(50% - 25px); 左:calc(50% - 50px); } 運用結果 3つの比較のまとめ 中央に配置された要素の幅と高さがわかっている場合、中心を設定する方法は比較的簡単です。 3 つの方法の本質は同じです。いずれも、中央に配置された要素に対して絶対的な配置を実行します。上部に 50%、左側に 50% 配置した後、中央に配置された要素の幅と高さの半分に引き戻され、真の中央配置が実現されます。 3 つの方法の違いは、要素自体の幅と高さを引き戻す方法の違いにあります。 【2】中央の要素の幅と高さが不明 絶対 + 変換 コードの実装 .wrapBox{ 幅: 300ピクセル; 高さ: 300px; 背景:#ddd; 位置: 相対的; } .wrapItem{ 幅: 100ピクセル; 高さ: 50px; 背景:緑; 位置: 絶対; 上位: 50%; 残り:50%; 変換: translate(-50% , -50%); } 運用結果 原理は、幅と高さがわかっている場合の実装方法と似ていますが、現在中央にある要素の幅と高さは不明であるため、現在中央にある要素の幅と高さを自動的に取得する必要がある点が異なります。 translate 属性はまさにこの機能を実装します。 利点と欠点 利点: 幅と高さを独自に自動的に計算します。 欠点: transform の他のプロパティを同時に使用すると、相互に影響を及ぼします。 フレックスレイアウト .wrapBox2{ 幅: 300ピクセル; 高さ: 300px; 背景: 青; ディスプレイ: フレックス; コンテンツの中央揃え: 中央; アイテムの位置を中央揃えにします。 } /*注: 子要素を行ブロック要素として設定しない場合でも、単一のレイヤーを占有することはありません*/ .wrapItem2{ 幅: 100ピクセル; 高さ: 50px; 背景:緑; } 運用結果 原則: 親要素をフロー レイアウトに設定し、フレックス レイアウトのプロパティ特性に従って子要素を中央に設定します。 利点と欠点 利点: フレックス レイアウトは柔軟性があり、子要素の設定を必要としません。 欠点: 互換性。子要素のfloat、clear、position等が使えません。他のレイアウトも存在する場合、影響が出やすいです。 テーブルセルレイアウト コードの実装 .wrapBox3{ 幅: 300ピクセル; 高さ: 300px; 背景: 黄色; 表示: テーブルセル; 垂直位置合わせ: 中央; テキスト配置: 中央; } .wrapItem3{ 幅: 100ピクセル; 高さ: 50px; 背景:緑; 表示: インラインブロック; } 運用結果 原則: テーブルの vertical-align プロパティに従って、要素をテーブル要素内で中央に配置するように設定し、次に text-align に従って水平方向の中央を設定できます。 表の要素 コードの実装 .tableBox{ border:2px 実線黄色; 幅: 300ピクセル; 高さ: 300px; } .tableBox テーブル{ 幅:100%; 高さ:100%; } .centerWrap{ テキスト配置: 中央; 垂直位置合わせ: 中央; } .centerアイテム{ 表示: インラインブロック; 背景:ピンク; } 運用結果 まとめると、テーブルタグは主に vertical-align 属性と text-align 属性を使用してレイアウトに使用されます。ただし、以前の方法と比較すると、テーブル タグを使用すると冗長なコードが大量に生成されます。推奨されません CSS で要素を垂直方向に中央揃えする 7 つの方法についての記事はこれで終わりです。CSS で要素を垂直方向に中央揃えする方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 |
<<: よく使用される HTML メタタグ属性 (Web サイトの互換性と最適化に必要)
2 つのパラメータ innodb_flush_log_at_trx_commit と sync_bi...
目次結果を一目で見るハート効果デジタルスクロールアニメーションアニメーションのように結果を一目で見る...
この記事では、Centos7.3でのmysql5.7.18のインストールと初期パスワードの変更につい...
Vm 内のハイパーリンク URL は、Get 要求のパラメータとして中国語と連結する必要があります。...
目次1. 変数の概要1.1 変数のメモリへの保存1.2 変数の使用1. 変数を宣言する2. 譲渡3....
目次1. はじめに2. バックアップとリカバリの簡単な定義3. 復旧計画で考慮すべきいくつかの要素4...
目次1. ルートの遅延読み込みとは何ですか? 2. ルートの遅延読み込みの使用1. ルートの遅延読み...
目次序文ブラウザコンパイル版ローカルプリコンパイルバージョン要約する序文vue3サンドボックスには主...
この記事では、線形グラデーションの凹四角形の遷移効果の難しさやアイデアについて説明します。主に、凹四...
Tomcat自体の最適化Tomcat メモリ最適化起動時に大きなメモリ ブロックが必要であることを ...
需要背景ビジネス テーブル tb_image のデータの一部は次のとおりです。id は一意ですが、i...
背景この記事では主に、MySQL が更新ステートメントを実行するときに、元のデータと同一の (つまり...
質問最近、プライベートミラーセンターにログインする必要がありましたが、ログイン時にエラーメッセージが...
目次1. 仮想DOMとは何ですか? 2. 仮想 DOM が必要な理由3. 仮想DOMはどのようにして...
自分でウェブページを書きたいので、HTML 言語についても少し勉強しています。これは、大学時代にウェ...