検索
ホームページウェブフロントエンドhtmlチュートリアルCSS の 2 列および 3 列のアダプティブ レイアウト メソッド Organized_html/css_WEB-ITnose

従来の方法をベースに、Flex レイアウトを追加し、それぞれの方法の長所と短所を説明します。まずディレクトリに移動します:

  • 2 列レイアウト: 左側が固定幅、右側が適応型
    • 方法 1: 浮動小数点数と負のマージンを使用する
    • 方法 2: マージンを使用する
    • 方法 3: 位置を使用する
    • 方法 4: フレックス レイアウトを使用する
  • 3 列レイアウト: 左と右のスタイル、中央で適応。
    • 方法 1: 負のマージンを使用する
    • 方法 2: 絶対配置を使用する
    • 方法 3: フレックス レイアウトを使用する

2 列レイアウト: 左側が固定幅、右側が適応幅

方法 1: 使用するfloat と負のマージン

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Document</title>    <style> *{ margin: 0; padding: 0; } .main,.sitebar{ font: bolder 20px/300px; } .main{ width: 100%; float: left; } .main .content{ margin-left: 200px; background-color: red; } .sitebar{ width: 200px; float: left; background-color: green; margin-left: -100%; } </style></head><body>    <div class="main">        <div class="content">右侧主体自适应区块</div>    </div>    <div class="sitebar">左侧定宽200px区块</div></body></html>
  • 利点: ページの最適化を考慮して、右側のメイン コンテンツ領域が最初にロードされ、左側が後でロードされます。

  • 短所: div ラッピングの追加レイヤーが追加されます。

方法 2: マージンを使用する

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Document</title>    <style> *{ margin: 0; padding: 0; } .sitebar{ float: left; width: 200px; background-color: green; } .content{ background-color: red; margin-left: 200px; } </style></head><body>    <div class="sitebar">左侧定宽200px区块</div>    <div class="content">右侧主体自适应区块</div></body></html>
  • 利点: コードが簡潔で理解しやすい

  • 欠点: ページの最適化には役に立たず、右側のメイン コンテンツ領域は

  • の後に読み込まれます

方法 3: 位置を使用する

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Document</title>    <style> *{ margin: 0; padding: 0; } .sitebar{ width: 200px; background-color: green; } .content{ position: absolute; left: 200px; right: 0; top: 0; background-color: red; } </style></head><body>    <div class="content">右侧主体自适应区块</div>    <div class="sitebar">左侧定宽200px区块</div></body></html>
  • 長所: ページの最適化を考慮して、右側のコンテンツ領域が最初に読み込まれます

  • 短所: まだ考えていません。 。

上記3つの方法はIE7以降に対応していますが、IE7以下で高さを設定していないと高さがずれるバグが発生します。これは、親要素 font-size=0 を設定し、次に子要素 font-size をそれぞれ設定することで解決できます。

方法 4: フレックス レイアウトを使用する

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Document</title>    <style> *{ margin: 0; padding: 0; } .main{ display: flex; } .content{ flex:1; background-color: red; } .sitebar{ flex:0 0 200px; order:-1; background-color: green; }  </style></head><body><div class="main">    <div class="content">右侧主体自适应区块</div>    <div class="sitebar">左侧定宽200px区块</div></div>    </body></html>
  • 利点: CSS3 の新しいレイアウト方法、優れています

  • 欠点: IE11+ のみをサポートします。

3 列レイアウト: 左と右、中央で適応。

方法 1: 負のマージンを使用する

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Document</title>    <style> *{ margin: 0; padding: 0; } .main,.left,.right{ height: 300px; font: 20px/300px; color: #fff; text-align: center; } .main{ width: 100%; float: left; } .main .content{ margin: 0 300px 0 200px; background-color: black; } .left{ width: 200px; float: left; margin-left: -100%; background-color: red; } .right{ width: 300px; float: left; margin-left: -300px; background-color: blue; } </style></head><body>    <div class="main">        <div class="content">中间主体区域宽度自适应</div>    </div>    <div class="left">左侧定宽200px</div>    <div class="right">右侧定宽300px</div></body></html>
  • 利点: IE7 以降と互換性があり、ページの最適化を考慮して、中央のコンテンツ領域が最初に読み込まれます

  • 欠点: div ネストの層が 1 つ多くなり、理解するのが困難です

方法 2: 絶対配置を使用する

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Document</title><style>body{ margin:0px;}#left { background-color: #E8F5FE; border: 1px solid #A9C9E2; height: 400px; width: 100px; position: absolute; top: 0px; left: 0px;}#center { background-color: #F2FDDB; border: 1px solid #A5CF3D; height: 400px; margin-right: 102px; margin-left: 102px;}#right { background-color: #FFE7F4; border: 1px solid #F9B3D5; height: 400px; width: 100px; position: absolute; top: 0px; right: 0px;}</style></head><body>    <div id="center">中列</div>    <div id="left">左列</div>    <div id="right">右列</div></body></html>
  • 長所: ページの最適化を考慮してコード構造が単純で、中間コンテンツが最初に読み込まれます

  • 短所: まだ考えていません。 。

方法 3: フレックス レイアウトを使用する

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title><style>.HolyGrail-body { display: flex; flex: 1;}.HolyGrail-content { flex: 1; background-color: green;}.HolyGrail-nav, .HolyGrail-ads { /* 两个边栏的宽度设为12em */ flex: 0 0 200px; background-color: blue;}.HolyGrail-nav { /* 导航放到最左边 */ order: -1; background-color: grey;}</style></head><body> <div class="HolyGrail-body"> <main class="HolyGrail-content">...</main> <nav class="HolyGrail-nav">...</nav> <aside class="HolyGrail-ads">...</aside> </div></body></html>
  • 利点: ハイエンド

  • 欠点: IE11+ のみをサポート

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
HTMLの汎用性:アプリケーションとユースケースHTMLの汎用性:アプリケーションとユースケースApr 30, 2025 am 12:03 AM

HTMLは、Webページのスケルトンであるだけでなく、多くのフィールドでより広く使用されています。1。Webページ開発では、HTMLはページ構造を定義し、CSSとJavaScriptを組み合わせて豊富なインターフェイスを実現します。 2。モバイルアプリケーション開発では、HTML5はオフラインストレージおよびジオロケーション機能をサポートしています。 3.メールやニュースレターでは、HTMLは電子メールの形式とマルチメディア効果を改善します。 4。ゲーム開発では、HTML5のCanvas APIを使用して2Dおよび3Dゲームを作成します。

HTMLドキュメントのルートタグは何ですか?HTMLドキュメントのルートタグは何ですか?Apr 29, 2025 am 12:10 AM

Theroottaginanhtmldocumentis.itservesStop-levellementThateChationCothercontent、ProperDocumentsTurcuteRuctureAndBrowsingを保証します。

HTMLタグと要素は同じものですか?HTMLタグと要素は同じものですか?Apr 28, 2025 pm 05:44 PM

この記事では、HTMLタグは要素を定義するために使用される構文マーカーであり、要素はタグやコンテンツを含む完全なユニットであると説明しています。彼らは協力してWebPages.Characterカウントを構築するために協力します:159

&lt; head&gt;の重要性は何ですかおよび&lt; body&gt; HTMLのタグ?&lt; head&gt;の重要性は何ですかおよび&lt; body&gt; HTMLのタグ?Apr 28, 2025 pm 05:43 PM

この記事では、&lt; head&gt;の役割について説明します。および&lt; body&gt; HTMLのタグ、ユーザーエクスペリエンスへの影響、およびSEOの影響。適切な構造化により、ウェブサイトの機能と検索エンジンの最適化が強化されます。

&lt; strong&gt;&lt; b&gt;の違いは何ですかタグと&lt; em&gt;&lt; i&gt;タグ?&lt; strong&gt;&lt; b&gt;の違いは何ですかタグと&lt; em&gt;&lt; i&gt;タグ?Apr 28, 2025 pm 05:42 PM

この記事では、HTMLタグの違いについて説明します。、、、、、、、およびプレゼンテーションの使用とSEOとアクセシビリティへの影響に焦点を当てています。

HTMLのドキュメントで使用されている文字セットを示す方法を説明してください。HTMLのドキュメントで使用されている文字セットを示す方法を説明してください。Apr 28, 2025 pm 05:41 PM

記事では、UTF-8に焦点を当てたHTMLでのキャラクターエンコーディングの指定について説明します。主な問題:テキストの正しい表示を確保し、文字化けされたキャラクターの防止、SEOとアクセシビリティの強化。

HTMLのさまざまなフォーマットタグは何ですか?HTMLのさまざまなフォーマットタグは何ですか?Apr 28, 2025 pm 05:39 PM

この記事では、Webコンテンツの構築とスタイリングに使用されるさまざまなHTMLフォーマットタグについて説明し、テキストの外観に対する影響とアクセシビリティとSEOのセマンティックタグの重要性を強調しています。

「ID」属性とHTML要素の「クラス」属性の違いは何ですか?「ID」属性とHTML要素の「クラス」属性の違いは何ですか?Apr 28, 2025 pm 05:39 PM

この記事では、HTMLの「ID」属性と「クラス」属性の違いについて説明し、一意性、目的、CSS構文、および特異性に焦点を当てています。それらがWebページのスタイリングと機能にどのように影響するかを説明し、のベストプラクティスを提供する

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。