CSS レイアウト チュートリアル: 3 列のレスポンシブ レイアウトを実装する最良の方法
前書き:
Web デザインでは、合理的なレイアウトが非常に重要です。レスポンシブ レイアウトとは、Web ページがさまざまなデバイスの画面サイズに応じてレイアウトを自動的に調整して適応させ、より良いユーザー エクスペリエンスを実現できることを意味します。この記事では、3 列のレスポンシブ レイアウトを実装するための最良の方法の 1 つを紹介し、具体的なコード例を示します。
1. HTML 構造
まず、HTML 構造を決定し、各要素に必要なクラス名と識別子を設定する必要があります。以下は基本的な HTML 構造の例です。
<div class="container"> <div class="left-column"> <!-- 左侧内容 --> </div> <div class="main-column"> <!-- 主要内容 --> </div> <div class="right-column"> <!-- 右侧内容 --> </div> </div>
上記のコードでは、.container
はラッピング コンテナー、.left-column
、.main です。 -column
と .right-column
は、それぞれ左列、メイン列、右列を表します。
2. CSS レイアウト
3 列のレスポンシブ レイアウトを実現するための、CSS レイアウトのコード例を次に示します:
.container { display: flex; flex-wrap: wrap; } .left-column { flex-basis: 25%; min-width: 300px; } .main-column { flex-basis: 50%; min-width: 500px; } .right-column { flex-basis: 25%; min-width: 300px; }
上記のコードでは、Flexbox レイアウトを使用します。 。 .container
は display: flex
に設定され、フレキシブル コンテナーになります。 flex-wrap:wrap
柔軟な項目をラップして新しい行に表示し、アダプティブ レイアウトを実現します。
各列、.left-column
、.main-column
、および .right-column
では、それぞれ flex-basis を使用します。
プロパティは初期サイズのパーセンテージを設定します。また、min-width
プロパティを使用して最小幅を設定し、小さな画面デバイスでの過度の圧縮を防ぎます。
3. メディア クエリ
レスポンシブなレイアウトを実現するには、メディア クエリを使用して、さまざまな画面サイズに応じてレイアウトを調整する必要もあります。以下は、メディア クエリのコード例です。
@media screen and (max-width: 768px) { .container { flex-direction: column; } .left-column, .main-column, .right-column { flex-basis: 100%; } }
上記のコードでは、メディア クエリ @media screen と (max-width: 768px)
を使用します。が 768px 以下の場合は、 .container
の flex-direction
プロパティを column
に設定して、垂直レイアウトに切り替えます。
同時に、.left-column
、.main-column
、.right- の
flex-basis## を変更します。 column #属性は 100% に設定され、スタック レイアウトを実現するためにコンテナーの幅全体を占めるようになります。
次は、3 列のレスポンシブ レイアウトの完全なコード例です:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Three Column Responsive Layout</title> <link rel="stylesheet" href="styles.css"> </head> <body> <div class="container"> <div class="left-column"> <!-- 左侧内容 --> </div> <div class="main-column"> <!-- 主要内容 --> </div> <div class="right-column"> <!-- 右侧内容 --> </div> </div> </body> </html>
.container { display: flex; flex-wrap: wrap; } .left-column { flex-basis: 25%; min-width: 300px; } .main-column { flex-basis: 50%; min-width: 500px; } .right-column { flex-basis: 25%; min-width: 300px; } @media screen and (max-width: 768px) { .container { flex-direction: column; } .left-column, .main-column, .right-column { flex-basis: 100%; } }
以上がCSS レイアウト チュートリアル: 3 列のレスポンシブ レイアウトを実装する最良の方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。