1カラム(段組)レイアウト
カラム(段組)とは、ページ垂直方向の区切りの事を指します。
ページの大まかなデザインやレイアウト、コンテンツの配置場所など、ページの基礎となる部分を担当します。
1カラムのレイアウトは、上から下へストレートに各セクションが並んだ、シンプルなレイアウトです。
モバイルサイトで良く使用されます。
2カラムのレイアウトは、一般的なサイトからブログまで広く使われ、「サイドバー」が左側の場合と右側の場合があります。

1段組を作る大まかなイメージを記載すると、下記をCSS(スタイルシート)無しでHTMLに記述した場合、HTMLソースに記述した通り、記事1→2の順序で縦に表示されます。
CSS(スタイルシート)でレイアウト(サイト)全体の幅や左寄せ・中央寄せなどを指定していきます。
<div class="block1">記事1</div> <div class="block1">記事2</div>
2カラムレイアウト
ここでは、2カラムレイアウトの作成方法を説明していきます。
グローバルナビゲーションと画像スライドショーの表示が出来たら、コンテンツとライトメニューを表示させます。ライトメニューはサイドバー、サブナビとも呼ばれます。
2カラム(2段組)レイアウトの場合、「大きな枠の中に、左右に寄せられた内枠を2つ作る」というのが大まかなイメージになります。
下記のHTMLの記述を画像スライドショーのタグの下に記述します。
floatを使って、左側の内枠に「コンテンツ」を右側の内枠に「ライトメニュー」を表示するようにHTMLとCSSで指定します。
CSS 8行目のfloat: left;と12行目のfloat: right;がそれに当たります。
コンテンツ
「コンテンツ」は「トピックス」と「プレスリリース」とで成り立ち(上の画像参照)、<div class=”headline1″>タグと<h2>タグを使い、CSS指定して見出しの枠線を付け文字を大きくしています。「トピックス」と「プレスリリース」のh2タグの指定はCSS 21行目です。
CSSの記述の #mainColumn がコンテンツの横幅 760pxです。#sideColumn がライトメニューの横幅 300pxです。
<div id=”contents”> は1番外側のタグのCSSの記述で 760px + 300px + 余白の合計 1100px を指定します。
ライトメニュー
左側の内枠「コンテンツ」の記述が出来たら、同様に右側の内枠「ライトメニュー」もHTMLとCSSで指定します。
ライトメニューのHTMLは<div id=”sideColumn”></div>で囲んだ中に記載していきます。
コンテンツの右側に表示するので float: right; 300px固定で指定します。
「トピックス」と「プレスリリース」の日付は「class=”top_list clear”」の liタグとspanタグで囲み、CSS 65行目、HTML 10~14行目、23~27行目で文字サイズを指定しています。文章は liタグで囲み、CSS 59行目、HTML 10~14行目、23~27行目で文字サイズを指定しています。
formタグは、検索ボタンが押されたときにaction属性で指定されたURLにフォームのデータを渡すようになっています(HTML60行目)。
HTML
<div id="contents" class="layout1 clearfix">
<!-- mainColumn -->
<div id="mainColumn">
<!-- topics -->
<div class="headline1 clearfix">
<h2>トピックス</h2>
<div class="archive_btn"><a class="blendy" href="http://www.sample.com/column.html">ページ一覧</a></div>
</div>
<ul class="top_list clear">
<li><span>2016.10.21</span><a href="http://www.sample.com">【第5回】トピックスを表示します</a></li>
<li><span>2016.10.19</span><a href="http://www.sample.com">【第4回】トピックスを表示します</a></li>
<li><span>2016.10.11</span><a href="http://www.sample.com">【第3回】トピックスを表示します</a></li>
<li><span>2016.10.7</span><a href="http://www.sample.com">【第2回】トピックスを表示します</a></li>
<li><span>2016.10.6</span><a href="http://www.sample.com">【第1回】トピックスを表示します</a></li>
</ul>
<!-- /topics -->
<!-- press release -->
<div class="headline1">
<h2>プレスリリース</h2>
<div class="archive_btn"><a class="blendy" href="https://www.uns-j.co.jp/archives/press">ページ一覧</a></div>
</div>
<ul class="top_list clear">
<li><span>2016.10.21</span><a href="http://www.sample.com">プレスリリースを表示します</a></li>
<li><span>2016.10.12</span><a href="http://www.sample.com">プレスリリースを表示します</a></li>
<li><span>2016.10.6</span><a href="http://www.sample.com">プレスリリースを表示します</a></li>
<li><span>2016.8.5</span><a href="http://www.sample.com">プレスリリースを表示します</a></li>
<li><span>2016.6.23</span><a href="http://www.sample.com">プレスリリースを表示します</a></li>
</ul>
<!-- /press release -->
</div>
<!-- /mainColumn -->
<!-- sideColumn -->
<div id="sideColumn">
<div class="side_widget clearfix styled_post_list1_widget" id="styled_post_list1_widget-2">
<h3 class="side_headline">ピックアップ記事</h3>
<ol class="styled_post_list1">
<li class="clearfix">
<div class="info">
<p class="date">2016.6.16</p>
<a class="title" href="http://www.sample.com">ピックアップ記事について</a> </div>
<div class="excerpt">ここにピックアップ記事を表示します。ここにピックアップ記事を表示します。</div>
</li>
</ol>
</div>
<div class="side_widget clearfix styled_post_list2_widget" id="styled_post_list2_widget-2">
<h3 class="side_headline">お役立ち情報</h3>
<ol class="styled_post_list2">
<li class="clearfix">
<p class="date">2016.10.6</p>
<h4 class="title"><a href="http://www.sample.com">お役立ち情報について</a></h4>
<div class="excerpt">お役立ち情報 お役立ち情報を記載します。お役立ち情報を記載します。お役立ち情報を記載します。...</div>
</li>
</ol>
</div>
<div class="side_widget clearfix widget_search" id="search-3">
<h3 class="side_headline">検索</h3>
<form role="search" method="get" id="searchform" class="searchform" action="https://www.uns-j.co.jp/">
<div>
<label class="screen-reader-text" for="s">検索:</label>
<input type="text" value="" name="s" id="s" />
<input type="submit" id="searchsubmit" value="検索" />
</div>
</form>
</div>
</div>
<!-- /sideColumn -->
</div>
<!-- END #contents -->
CSS
#contents {
width: 1100px;
margin: 0 auto 85px;
}
.layout1 #mainColumn {
width: 760px;
float: left;
}
.layout1 #sideColumn {
width: 300px;
float: right;
}
/* no side */
.page-template-page-noside-php #global_menu {
width:950px;
}
.page-template-page-noside-php #contents {
width:950px;
}
.page-template-page-noside-php #left_col {
float:none;
width:950px;
}
/* headline */
.headline1 {
margin:0;
padding:0 0 0 20px;
height:43px;
line-height: 43px;
border:1px solid #ccc;
border-left:5px solid #0077B3;
font-size:14px;
background:url(images/headline_bg.jpg) repeat-x left bottom;
}
.headline1 h2 {
font-size: 14px;
font-weight: bold;
color: #000;
display: inline-block;
float: left;
width: 604px;
margin: 0;
}
.headline1 .archive_btn a {
display: block;
float: right;
width: 130px;
height: 43px;
text-align: center;
text-decoration: none;
font-size: 12px;
line-height: 43px;
padding: 0;
color: #000;
background:url(images/archive_btn.jpg) no-repeat left top;
}
.headline1 .archive_btn a:hover, .headline1 .archive_btn a.hover {
background:url(images/archive_btn.jpg) no-repeat left bottom;
}
.headline2 {
font-size: 14px;
height: 56px;
line-height: 56px;
padding: 0 20px;
margin: 0;
border-top: solid 5px #f00;
border-left: solid 1px #ccc;
border-right: solid 1px #ccc;
border-bottom: solid 1px #ccc;
background-image: url(images/headline_bg.jpg);
background-repeat: repeat-x;
background-position: left bottom;
}
#page-title {
font-size: 18px;
font-weight: bold;
color: #000;
}
.side_headline {
border-left:5px solid #0077B3;
}
.top_list {
width: 760px;
margin-top: 10px;
}
.top_list li {
height: 41px;
line-height: 41px;
background-image: url(images/dot_02.png);
background-repeat: repeat-x;
background-position: left bottom;
font-size: 14px;
}
.top_list li:last-child {
background: none;
}
.top_list li span {
font-size: 12px;
font-weight: bold;
width: 80px;
display: inline-block;
color: #000;
}
.top_list li a {
text-decoration: none;
}
.top_list li a:hover {
text-decoration: underline;
}


この記事へのコメントはありません。