両端の CSS レイアウトのサンプルコード (親の負のマージンを使用)

両端の CSS レイアウトのサンプルコード (親の負のマージンを使用)

最近、開発中に両端が揃ったレイアウトに遭遇しました。レイアウトはパーセンテージに基づいていました。以前はフレックスレイアウトを使用していましたが、両端にフレックスレイアウトを使用すると、さまざまなバグが発生していました。例えば、以下のように動的に生成される場合、3列以上であれば、両側に以下のリストが分散されます。
解決はできるものの、やはり通常の CSS を使ってレイアウトする方法を見てみたいと思います。私がこれを書いたからです。

オンラインでいくつかのチュートリアルを見つけましたが、それらはすべて操作の幅が固定されていました。それをパーセンテージ形式に変更して簡単に記録しました。
まず、CSS

<スタイル>
        * {
            パディング: 0px;
            マージン: 0px;
            ボックスのサイズ: 境界線ボックス;
        }
        
        .max-box {
            最大幅: 1200px;
            マージン: 0px 自動;
        }
        
        。箱 {
            オーバーフロー: 非表示;
            幅: calc(100% + 20px);
            左マージン: -10px;
        }
        
        .インナー{
            高さ: 100px;
            境界線: 実線 1px 赤;
            フロート: 左;
            左マージン: 10px;
            幅: calc(((100% - 20px) - 10px * 3) / 4);
        }
        
        .max-box2 {
            最大幅: 1200px;
            マージン: 50px 自動;
            境界線: 実線 1px 赤;
            高さ: 200px;
        }
    </スタイル>

次にHTMLへ

 <div class="max-box2">

    </div>
    <div class="max-box">
        <div class="box">
            <div class="inner">

            </div>
            <div class="inner">

            </div>
            <div class="inner">

            </div>
            <div class="inner">

            </div>
        </div>
    </div>

これらを HTML に記述すると、その効果を確認できます。
下記の通り

ここに画像の説明を挿入

最後に、式をまとめてみましょう

x = 10px; つまり、必要な間隔 y = 4 つまり、必要な行数 親: width: calc(100% + (x * 2));
子: 幅: calc(((100% - (x * 2)) - x * ( y - 1)) / y );

要約する

CSS レイアウト - 両端レイアウト (親の負のマージンを使用) に関するこの記事はこれで終わりです。CSS レイアウトの親の負のマージンに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

<<:  Linux netstatコマンドの詳細な説明

>>:  JavaScript排他的思考の具体的な実装

推薦する

JS+AJAX は、州、市、地区のドロップダウン リストのリンクを実現します。

この記事では、州、市、地区のドロップダウンリストのリンクを実現するためのJS + AJAXの具体的な...

MySQL 5.7.9 バージョンの sql_mode=only_full_group_by 問題を解決する

MySQL 5.7.9 バージョンの sql_mode=only_full_group_by の問題...

ウェブデザインと制作に関する科学的原則と提案の要約

<br />ネットワーク設計の分野では、アイトラッキングに関する研究が非常に盛んに行われ...

MySQL関数の包括的な概要

目次1. MySQLでよく使われる文字列関数2. 数値関数3. 日付と時刻の機能4. プロセス機能5...

ウィンドウ環境で VScode を使用して仮想マシン MySQL に接続する方法

1. 仮想マシン側1. MySQLの設定ファイルを見つける:sudo vim /etc/mysql/...

知っておくべき 7 つのネイティブ JS エラーの種類

目次概要1. 範囲エラー2. 参照エラー3. 構文エラー4. タイプエラー5. URIエラー6. 評...

Navicatを使用してクラウドサーバーデータベースにリモート接続する方法

秘密鍵を開かずにリモート サーバーのデータベースに接続するのは非常に便利です。新しい接続でデータを入...

W3C組織はHTML4のスタイルに関する推奨事項を提供しています

これは、W3C 組織が HTML4 に対して提示したスタイル推奨事項です。残念ながら、ブラウザが独自...

Vue ソースコード学習でレスポンシブ性を実装する方法

目次序文1. レスポンシブシステムの重要な要素1. データの変更を監視する方法2. 依存関係を収集す...

Linux で time(NULL) 関数と localtime() を使用して現在の時刻を取得する方法

time(); 関数関数プロトタイプ: time_t time(time_t *timer)関数の目...

Tomcat CentOS インストールプロセス図

Tomcat CentOS インストールこのインストール チュートリアルでは、次の内容について説明し...

JSはスネークゲームを実装する

目次1. 初期化構造2. 蛇の色のレンダリング3. ヘビの動き4. ヘビの死を判定する方法 ヘビの死...

マークアップ言語 - テキストの CSS スタイルを指定する

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

MySQL MGR の利点は何ですか?

MGR (MySQL グループ レプリケーション) は、バージョン 5.7 で追加された新しい機能...

Angularコンポーネント投影の詳細な説明

目次概要1. 簡単な例1.サブコンポーネントの<ng-content>ディレクティブを使...