両端の 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排他的思考の具体的な実装

推薦する

Tomcat 例外の解決方法 (リクエスト ターゲットに無効な文字が見つかりました。有効な文字は RFC 7230 および RFC 3986 で定義されています)

1. シナリオ表示Tomcat ログに次の例外情報が時々報告されます。何が起こっているのでしょうか...

DockerでKafkaをデプロイする方法

目次1. Dockerをビルドする2. コンテナに入る3. 設定ファイルを変更する4. Kafkaを...

innerHTML アプリケーション

ブランクのブログ: http://www.planabc.net/ innerHTML プロパティは...

HTML ウェブページのメタビューポート属性の説明

HTML メタビューポート属性の説明ビューポートとはモバイル ブラウザは、Web ページを仮想の「ウ...

MySQL テーブルにおける非主キー列オーバーフロー監視の詳細な説明

今日もまた罠に落ちてしまいました。 私は以前MySQLの主キーオーバーフローに遭遇したことがあり、そ...

Linux での scp および sftp コマンドの詳細な説明

目次序文1. SCPの使用法2. sftpを使用する3. scp と sftp の違いは何ですか?ど...

OpenLayers 3 のベクターマップソースの読み込みの問題を解決する

1. ベクターマップベクター グラフィックスは直線と曲線を使用してグラフィックスを表します。これらの...

MySQL トリガーの追加、削除、変更、クエリ操作の例

この記事では、例を使用して、MySQL トリガーの追加、削除、変更、およびクエリ操作について説明しま...

MySQL で固定されていない位置から文字列要素を抽出する方法

序文注: テストデータベースのバージョンはMySQL 8.0ですテストデータ: テーブルzqs(id...

セマンティック HTML タグの紹介

ここ数年、ウェブサイト開発では DIV+CSS が非常に人気があり、当時は大きな騒動を引き起こしまし...

Ant Design Blazor コンポーネントライブラリのルーティング再利用マルチタブ機能

最近、Ant Design Blazor コンポーネント ライブラリにマルチタブ コンポーネントを実...

Linux環境にMySQLデータベースをインストールする詳細なチュートリアル

1. データベースをインストールする1) yum -y install mysql-server (...

MySQLアカウントのIP制限条件を変更する方法

序文最近、仕事で、MySQL ユーザーの権限を変更するには、特定の IP アドレスへのアクセスを制限...

HTML入力ファイルコントロールはアップロードされるファイルの種類を制限します

入力ファイルの HTML コントロールを Web ページに追加します。 <input id=&...

Mysql接続数の設定と取得方法

接続数を取得する --- 最大接続数を取得します。SHOW VARIABLES LIKE '...