• 投稿者:
  • 投稿コメント:0件のコメント
  • 投稿カテゴリー:HTML
  • 投稿の最終変更日:2021年3月23日

HTML レイアウトの例

<html lang=”en”>
<head>
<title>CSS Template</title>
<meta charset=”utf-8″>
<meta name=”viewport” content=”width=device-width, initial-scale=1″>
<style>
* {
box-sizing: border-box;
}

body {
font-family: Arial, Helvetica, sans-serif;
}

/* Style the header */
header {
background-color: #666;
padding: 30px;
text-align: center;
font-size: 35px;
color: white;
}

/* Container for flexboxes */
section {
display: -webkit-flex;
display: flex;
}

/* Style the navigation menu */
nav {
-webkit-flex: 1;
-ms-flex: 1;
flex: 1;
background: #ccc;
padding: 20px;
}

/* Style the list inside the menu */
nav ul {
list-style-type: none;
padding: 0;
}

/* Style the content */
article {
-webkit-flex: 3;
-ms-flex: 3;
flex: 3;
background-color: #f1f1f1;
padding: 10px;
}

/* Style the footer */
footer {
background-color: #777;
padding: 10px;
text-align: center;
color: white;
}

/* Responsive layout – makes the menu and the content (inside the section) sit on top of each other instead of next to each other */
@media (max-width: 600px) {
section {
-webkit-flex-direction: column;
flex-direction: column;
}
}
</style>
</head>
<body>

<h2>CSS Layout Flexbox</h2>
<p>In this example, we have created a header, two columns/boxes and a footer. On smaller screens, the columns will stack on top of each other.</p>
<p>Resize the browser window to see the responsive effect.</p>
<p><strong>ノート:</strong> Flexbox is not supported in Internet Explorer 10 and earlier versions.</p>

<header>
<h2>Cities</h2>
</header>

<section>
<nav>
<ul>
<li>London</li>
<li>Paris<</li>
<li>Tokyo</li>
</ul>
</nav>

<article>
<h1>London</h1>
<p>London is the capital city of England. It is the most populous city in the United Kingdom, with a metropolitan area of over 13 million inhabitants.</p>
<p>Standing on the River Thames, London has been a major settlement for two millennia, its history going back to its founding by the Romans, who named it Londinium.</p>
</article>
</section>

<footer>
<p>Footer</p>
</footer>

</body>
</html>


上のHTMLを表示するとレイアウトが要素ごとに表示されることが確認できます。


HTMLレイアウト要素

Webサイトでは、コンテンツを複数の列に表示することがよくあります(雑誌や新聞みたいに)

HTMLは、Webページのさまざまな部分を定義するいくつかのセマンティック要素を提供します。:

HTML5 Semantic Elements
  • <header> – ドキュメントまたはセクションのヘッダーを定義します
  • <nav> – ナビゲーションリンクのコンテナを定義します
  • <section> – ドキュメント内のセクションを定義します
  • <article> – 独立した自己完結型の記事を定義します
  • <aside> – コンテンツを定義しますコンテンツとは別に(サイドバーみたいに)
  • <footer> – ドキュメントまたはセクションのフッターを定義します
  • <details> – ドキュメントまたはセクションのフッターを定義します
  • <summary> – <details> 要素の見出しを定義します

HTMLレイアウト手法

複数列レイアウトを作成する方法は5つあります。それぞれの方法には長所と短所があります。:

  • HTMLテーブル(非推奨)
  • CSS floatプロパティ
  • CSSフレックスボックス
  • CSSフレームワーク
  • CSSグリッド


スポンサーリンク

どれを選ぶか?

HTML テーブル

<table>要素はレイアウトツールとして設計されていません。
<table>要素の目的は、表形式のデータを表示することです。 そのため、ページレイアウトにテーブルを使用しないでください。使用してしまうとサイトを再設計することがどれほど難しいか想像してみてください。

ヒント: 上記のことからページレイアウトにテーブルを使用しないでください!


CSS フレームワーク

早くレイアウトを作成したい場合は
W3.CSS や Bootstrapなどのフレームワークを使用できます 。


コメントを残す