CSSを使用して中央に固定された2つの列と適応型列を実現する方法

CSSを使用して中央に固定された2つの列と適応型列を実現する方法

1. 絶対位置とマージンを使用する

この方法の原則は、左側と右側をドキュメントの流れから外れるように配置することです。 中央の領域はそれらの下に自然に流れ、それらの余白値を設定します

この方法では、ページ要素構造の順序を自由に変更できます。ただし、先頭の値を処理しないと、位置がずれる可能性があるので注意してください。

html

<div id='コンテナ'>
    <div class='left'>左側</div>
    <div class='center'>中央</div>
    <div class='right'>右側</div>
</div>

CS

#容器 {
    位置: 相対的;
}
.左、.右{
    位置: 絶対;
    上: 0;
    幅: 200ピクセル;
    最小高さ: 500px;
    背景色: 赤;
}
。左 {
    左: 0;
}
。右 {
    右: 0;
}
。中心 {
    マージン: 0px 210px;
    最小高さ: 500px;
    背景色: 黄色;
}

2. フロートとマージンを使用する

この方法の原理は、左側と右側をフロートさせてドキュメントフローから外し、中央部分を通常のドキュメントフロー内にして、その余白値を設定することです。

この方法では、中央部分を最後に配置する必要があります。ウィンドウが特に小さい場合は、右側が圧迫されます。

html

<div id='コンテナ'>
    <div class='left'>左側</div>
    <div class='right'>右側</div>
    <div class='center'>中央</div>
</div>

CS

#容器 {
    位置: 相対的;
}
.左、.右{
    幅: 200ピクセル;
    最小高さ: 500px;
    背景色: 赤;
}
。左 {
    フロート: 左;
}
。右 {
    フロート: 右;
}
。中心 {
    最小高さ: 500px;
    マージン: 0px 210px;
    背景色: 黄色;
}

3. 聖杯レイアウト

この方法は最も一般的であり、3 つは相互に関連しており、最も堅牢です。

まず、真ん中の部分を前面に置き、容器の層で包みます。外側のコンテナにより画面全体の 100% を占め、左側、中央、右側はすべて float: left になります。 中央の左余白と右余白を両側のコンテナの幅に余白を加えた値に設定し、左の margin-left を -100% に設定して左端に表示し、右の margin-right を -200px に設定して右端に表示します。

html

<div id='コンテナ'>
    <div class='center_wrap'>
        <div class='center'>中央</div>
    </div>
    <div class='left'>左側</div>
    <div class='right'>右側</div>
</div>

CS

#容器 {
    位置: 相対的;
}
.center_wrap、.left、.right{
    フロート: 左;
    最小高さ: 500px;
}
.center_wrap {
    幅: 100%;
}
.center_wrap .center{
    最小高さ: 500px;
    マージン: 0px 210px;
    背景色: 黄色;
}
.左、.右{
    幅: 200ピクセル;
    背景色: 赤;
}
。左 {
    左マージン: -100%;
}
。右 {
    左マージン: -200px;
}

4. CSS3 フレックス

html

<div id='コンテナ'>
    <div class='left'>左側</div>
    <div class='center'>中央</div>
    <div class='right'>右側</div>
</div>

CS

#容器 {
    幅: 100%;
    ディスプレイ: フレックス;
}
.左、.右{
    幅: 200ピクセル;
    背景色: 赤;
    最小高さ: 500px;
}
。中心 {
    フレックス: 1;
    最小高さ: 500px;
    マージン: 0 10px;
    背景色: 黄色;
}

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

<<:  ウェブサイトのアクセス速度を向上させるための徹底的な最適化に関するヒント

>>:  JavaScript が Taobao の虫眼鏡効果を模倣

推薦する

vue-video-player でのブレークポイント再開の実装

最近のプロジェクトでは、ブレークポイントからビデオの再生を再開する機能を実装する必要がありました。こ...

XHTML Web ページ チュートリアル

この記事は主に、初心者に XHTML の基本的な知識と、XHTML と HTML の違いを理解しても...

MySQL スケジュールタスク (EVENT イベント) を詳細に設定する方法

目次1. イベントとは何ですか? 2. 「イベント」機能を有効にする1. 機能が有効になっているかど...

MySQL の時間保持問題に関する簡単な分析

MySQL のデフォルトの時間タイプ (datetime と timestamp) の精度は秒です。...

MySql 5.7.21 無料インストール バージョンの構成方法 (Win10 の場合)

1.インストールしたい場所に解凍し、my.iniファイルを作成します。 my.iniの内容は次のと...

HTML テーブル マークアップ チュートリアル (28): セルの境界線の色属性 BORDERCOLOR

テーブルを美しくするために、セルごとに異なる境界線の色を設定できます。基本的な構文<TD 境界...

dockerでredis5.0.3をインストールする方法

1. 公式5.0.3イメージを取得する [root@localhost ~]# docker pul...

HTML テーブル マークアップ チュートリアル (5): ライト ボーダー カラー属性 BORDERCOLORLIGHT

表では、左上の境界線の色を個別に定義したり、セルの右下の境界線の色を定義したりできます。これら 2 ...

携帯電話に GreasyFork js スクリプトをインストールするチュートリアル

目次序文1. Iceraven ブラウザ (Firefox) (Android) 2. (アンドロイ...

ウェブデザインの発展と西洋建築の類似点は何でしょうか?

歴史は常に驚くほどうまく繰り返される。西洋建築とウェブデザインは、どちらも工学と芸術の組み合わせです...

MySQL パーティション関数の詳細な説明と例の分析

まず、データベース パーティショニングとは何でしょうか?以前、MySQL のテーブル パーティショニ...

MySQLは効率的なインデックス例分析を確立する

この記事では、例を使用して、MySQL で効率的なインデックスを作成する方法について説明します。ご参...

効率的なMySQLページングの詳細な説明

序文通常、大量のデータを扱う MySQL クエリには「ページング」戦略が採用されます。ただし、ページ...

Docker で Java 8 Spring Boot アプリケーションを開発する方法

この記事では、ローカル マシンに Java 8 をインストールせずに、Java 8 を使用して簡単な...

nginxでgzip圧縮を有効にする手順を完了する

目次序文1. gzip圧縮を設定する2. 詳細設定3. nginxサービスを再起動する要約する序文ウ...