2カラムレイアウト基本

2カラムレイアウト基本


Homepage Title
サブタイトルサブタイトルサブタイトル
コンテンツのタイトル

コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。

コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。

メニューのリンク1
メニューのリンク2
メニューのリンク3
メニューのリンク4
メニューのリンク5

Copyright © AUTHOR NAME, All Rights Reserved.

ワークフロー(作成手順)

マークアップ
  • 外部CSSファイルを正しく読み込む(相対パスで記述する)
  • smallタグは、脚注などの補足要素に記述する
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>floatを使ったレイアウト</title>
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<div id="container">
<div id="header">
<h1>Homepage Title</h1>
<p>サブタイトルサブタイトルサブタイトル</p>
</div><!-- /#header -->
<div id="wrapper">
<div id="content">
<h2>コンテンツのタイトル</h2>
<p>コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。</p>
<p>コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。コンテンツの本文を記述します。</p>
</div><!-- /#content -->
<div id="nav">
<ul>
<li><a href="#">メニューのリンク1</a></li>
<li><a href="#">メニューのリンク2</a></li>
<li><a href="#">メニューのリンク3</a></li>
<li><a href="#">メニューのリンク4</a></li>
<li><a href="#">メニューのリンク5</a></li>
</ul>
</div><!-- /#nav -->
</div><!-- /#wrapper -->
<div id="footer">
<p><small>Copyright &#169; AUTHOR NAME, All Rights Reserved.</small></p>
</div><!-- /#footer -->
</div><!-- /#container -->
</body>
</html>

コンテンツ内容を入れる箱を決める

  • レイアウト用グループ化
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>floatを使ったレイアウト</title>
<link rel="stylesheet" href="css/style.css">
</head>
<body>
<div id="container">
<div id="header"></div>
<div id="wrapper">
<div id="content"></div>
<div id="sidebar"></div>
</div><!-- /#wrapper -->
<div id="footer"></div>
</div><!-- /#container -->
</body>
</html>
リセットCSS
  • ブラウザの持つ初期値をリセットして、値を適用しやすくする
@charset "UTF-8";

/* reset
------------------------------------------------------------*/
html, body, div, h1, h2, p, ul, li, small {
  margin: 0;
  padding: 0;
  line-height: 1.0;
  font-family: 
    "Hiragino Kaku Gothic ProN",
    Meiryo,
    sans-serif;
}

/* font-size
------------------------------------------------------------*/
body { font-size: 16px; }
h1 { font-size: 32px; }
h2 { font-size: 20px; }
p { font-size: 16px; }
ul, li { font-size: 16px; }

/* body
------------------------------------------------------------*/
body {
  background-color: #E2E2E2;
  color: #333;
}

/* layout
------------------------------------------------------------*/
#container {
  width: 800px;
  background-color: #FFF;
}


#containerの位置を確定
  • 幅を「width+左右の余白」でトータル800px、marginの左右をautoで画面の中央に配置
#container {
  width: 760px;
  margin: 0 auto;
  padding: 20px;
  background-color: #FFF;
}


#headerの設定
  • 背景画像を読み込む
/* layout
------------------------------------------------------------*/
#container {
  width: 760px;
  margin: 0 auto;
  padding: 20px;
  background-color: #FFF;
}
#header {
  height: 180px;
  margin-bottom: 30px;
  padding: 20px 0 0 20px;
  background: url(../img/header01.jpg) no-repeat center top;
}

/* #header
------------------------------------------------------------*/
#header h1 {
  font-family: "Arial Black", Gadget, sans-serif;
  margin-bottom: 10px;
}
#header p { font-size: 14px; }


他のレイアウトを設定
  • 左右に不動状態を「#wrapper」で囲む
  • 不動状態を囲む要素には「overflow: hidden;」を指定
#wrapper {
  overflow: hidden;
  margin-bottom: 10px;
}
#content {
  width: 550px;
  float: left;
}
#nav {
  width: 180px;
  float: right;
}
#footer {
  padding: 10px;
  text-align: center;
  border-top: 1px dotted #AAA;
}


#contentと#navを設定
  • li のリンクには、マウスオーバー時の設定をする
/* #content
------------------------------------------------------------*/
#content h2 {
  background: #C1F569;
  margin-bottom: 20px;
  padding: 12px 0 10px 18px;
}
#content p {
  line-height: 1.6;
  margin-bottom: 20px;
}

/* #nav
------------------------------------------------------------*/
#nav li a {
  display: block;
  padding: 12px 0 10px 1.0em;
  border-bottom: 1px solid #AAA;
  font-weight: bold;
  color: #333;
}
#nav li:first-child a {
  border-top: 1px solid #AAA;
}
#nav li a:hover {
  color: #F90;
}