ホームページ > ウェブフロントエンド > CSSチュートリアル > CSS グリッドとフレックスボックスを使用してグリッド レイアウトでレスポンシブな正方形を構築する方法

CSS グリッドとフレックスボックスを使用してグリッド レイアウトでレスポンシブな正方形を構築する方法

Susan Sarandon
リリース: 2024-11-26 06:21:09
オリジナル
975 人が閲覧しました

How to Build Responsive Squares in a Grid Layout Using CSS Grid and Flexbox?

レスポンシブな正方形を含むグリッド レイアウトを作成する方法

この記事では、CSS を使用してレスポンシブな正方形を含むグリッド レイアウトを作成する方法について説明します。

CSS グリッドのアプローチ

CSS グリッドの場合、次の組み合わせを使用できます。レスポンシブな正方形を作成するための Grid-template-columns と padding-bottom のトリック。 padding-bottom トリックは、正方形のパディングにパーセンテージ値を割り当て、そのアスペクト比を効果的に 1:1 に設定します。

.square-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(30%, 1fr));
}

.square {
    padding-bottom: 100%;
}
ログイン後にコピー

Flexbox アプローチ

Flexbox を使用すると、同様のパディングを使用できます。 -ボトム レスポンシブな正方形を作成するテクニック。フレックス項目のパディングにパーセンテージ値を割り当てることで、アスペクト比が等しくなるように設定できます。

.square-container {
    display: flex;
    flex-wrap: wrap;
}

.square {
    flex-basis: calc(33.333% - 10px);
    margin: 5px;
    padding-bottom: 100%;
}
ログイン後にコピー

どちらの方法でも、パディングのパーセント値を確実にするには疑似要素または追加のラッパーを使用する必要があることに注意してください。フレックス項目やグリッド項目ではなく、正方形自体に適用されます。

メディア クエリの使用応答性

小さい画面でグリッド レイアウトを 1 列に折りたたむには、メディア クエリを使用できます。

@media (max-width: 768px) {
    .square-container {
        grid-template-columns: 100%;
        flex-direction: column;
    }
}
ログイン後にコピー

結論

これらのテクニックを組み合わせることで、さまざまな画面サイズやデバイスの方向にわたって一貫したアスペクト比を維持する、応答性の高い正方形のグリッド レイアウト。

以上がCSS グリッドとフレックスボックスを使用してグリッド レイアウトでレスポンシブな正方形を構築する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート