ホームページ ウェブフロントエンド CSSチュートリアル Flexbox アイテムが不完全な線を中心に配置されるのを防ぐ方法

Flexbox アイテムが不完全な線を中心に配置されるのを防ぐ方法

Nov 19, 2024 pm 05:27 PM

How to Prevent Flexbox Item Centering on Incomplete Lines?

Flexbox アイテムが破線の中心に配置されないようにするにはどうすればよいですか?

Flexbox で、適合しないアイテムが入ったフレキシブル コンテナがある場合幅内で 1 行に均等に配置されると、その行上の残りの項目が中央に配置されます。しかし、完全な行の項目と同じように、残りの項目を左から開始して等間隔にしたい場合はどうすればよいでしょうか?

解決策: "ゴースト" 要素を使用する

JavaScript を使用せずに、不完全な行の残りのスペースを埋める空の要素 (「ゴースト」要素と呼ばれる) を作成できます。

たとえば、コンテナの潜在的な列の長さが 4 の場合、3 つのゴースト要素が必要になります。これらを HTML の末尾に追加できます:

<div class="card"></div>
<div class="card"></div>
<div class="card"></div>
ログイン後にコピー

更新された CSS:

.card:empty {
    width: 300px;
    box-shadow: none;
    margin: 2rem;
    padding-bottom: 0;
}
ログイン後にコピー

これにより、ゴースト要素が確実に同じスペースを占めるようになります。実際のカード。

擬似カードの使用要素

CSS 疑似要素を利用して、必要なゴースト要素の数を減らすこともできます。

.card:empty::before {
    content: "";
    width: 300px;
    box-shadow: none;
    margin: 2rem;
}
ログイン後にコピー

これにより、空のカードごとに疑似要素が作成され、その場所に配置されます。不完全なライン。 2 つのゴースト要素を 2 つの擬似要素に置き換えることにより、列長 4 に対して実際に必要なゴースト要素は 1 つだけになります。

コード例:

<div class="container">
  <div class="recipe-grid">

    <div class="card">
      <!-- Card content -->
    </div>

    <div class="card">
      <!-- Card content -->
    </div>

    <div class="card">
      <!-- Card content -->
    </div>

    <div class="card">
      <!-- Card content -->
    </div>

    <div class="card"></div> <!--- Ghost element -->

  </div>
</div>
ログイン後にコピー

を使用するゴースト要素や疑似要素を使用すると、Flexbox アイテムが不完全な線の中心に配置されるのを防ぎ、より視覚的に好ましい配置を確保できます。

以上がFlexbox アイテムが不完全な線を中心に配置されるのを防ぐ方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

WordPressブロックと要素にボックスシャドウを追加します WordPressブロックと要素にボックスシャドウを追加します Mar 09, 2025 pm 12:53 PM

WordPressブロックと要素にボックスシャドウを追加します

Smart Forms Frameworkを使用してJavaScript連絡フォームを作成する Smart Forms Frameworkを使用してJavaScript連絡フォームを作成する Mar 07, 2025 am 11:33 AM

Smart Forms Frameworkを使用してJavaScript連絡フォームを作成する

満足している属性を持つインラインテキストエディターを作成します 満足している属性を持つインラインテキストエディターを作成します Mar 02, 2025 am 09:03 AM

満足している属性を持つインラインテキストエディターを作成します

GraphQLキャッシングの使用 GraphQLキャッシングの使用 Mar 19, 2025 am 09:36 AM

GraphQLキャッシングの使用

最初のカスタムSvelteトランジションを作成します 最初のカスタムSvelteトランジションを作成します Mar 15, 2025 am 11:08 AM

最初のカスタムSvelteトランジションを作成します

5つの最高のPHPフォームビルダー(および3つの無料スクリプト)を比較する 5つの最高のPHPフォームビルダー(および3つの無料スクリプト)を比較する Mar 04, 2025 am 10:22 AM

5つの最高のPHPフォームビルダー(および3つの無料スクリプト)を比較する

node.jsとexpressのMulterを使用してファイルアップロードします node.jsとexpressのMulterを使用してファイルアップロードします Mar 02, 2025 am 09:15 AM

node.jsとexpressのMulterを使用してファイルアップロードします

スクリーンリーダーの分解:アクセス可能なフォームとベストプラクティス スクリーンリーダーの分解:アクセス可能なフォームとベストプラクティス Mar 08, 2025 am 09:45 AM

スクリーンリーダーの分解:アクセス可能なフォームとベストプラクティス

See all articles