タブ付きボックス2

無料・有料 レンタルサーバー比較


タブ付きのボックスを作成するHTMLとCSSのサンプルコードです。

ボックスの上部に、一体型のタブを取り付けたタイプとなります。

テンプレートのご利用について


【ボックス1】

ボックスの内容

ボックスの内容

【ボックス2】

ボックスの内容

ボックスの内容

デザインのみのサンプルとなります(JavaScriptは組み込まれていません)。

  • タブの幅は、タブ内のテキスト量に合わせて調整してください。
  • タブの幅は、文字サイズに応じて変化します。変化させたくない場合は、タブの幅をピクセルで指定してください。
  • 各タブの幅は均等になります。
  • li要素にクラス名(active)を設定すると、そのタブをアクティブタブ(白いタブ)に切り替えることができます。

コード

CSSコード
/* --- ボックス --- */
.section {
width: 600px; /* ボックスの幅 */
margin: 20px 0; /* ボックスのマージン(上下、左右) */
font-size: 80%; /* ボックスの文字サイズ */
color: #000000; /* ボックスの文字色 */
}

/* --- タブエリア --- */
.section .sectionNav {
width: 599px; /* タブエリアの幅 */
margin: 0;
padding: 0;
border-left: 1px #c0c0c0 solid; /* タブエリアの左枠線 */
list-style-type: none;
}
.section .sectionNav li {
position: relative;
z-index: 1;
width: 6em; /* タブの幅 */
margin-bottom: -1px; /* タブの下マージン */
background-color: #e8e8e8; /* タブの背景色 */
border-top: 1px #c0c0c0 solid; /* タブの上枠線 */
border-left: 1px #ffffff solid; /* タブの左枠線 */
border-right: 1px #c0c0c0 solid; /* タブの右枠線 */
text-align: center;
float: left;
}

/* --- リンク --- */
.section .sectionNav li a {
display: block;
position: relative; /* IE6用 */
padding: 3px 2px; /* リンクエリアのパディング(上下、左右) */
text-decoration: none; /* テキストの下線(なし) */
}
/* --- ポイント時の設定 --- */
.section .sectionNav li a:hover {
text-decoration: underline; /* テキストの下線(あり) */
}

/* --- アクティブなタブ --- */
.section .sectionNav li.active {
z-index: 3;
background-color: #ffffff; /* アクティブタブの背景色 */
font-weight: bold; /* 太字 */
}
.section .sectionNav li.active a {
color: #000000; /* アクティブタブの文字色 */
}
/* --- ポイント時の設定 --- */
.section .sectionNav li.active a:hover {
text-decoration: none; /* テキストの下線(なし) */
}

/* --- 本文領域 --- */
.section .textArea {
position: relative;
z-index: 2;
padding: 10px;
background-color: #ffffff; /* 本文領域の背景色 */
border: 1px #c0c0c0 solid; /* 本文領域の枠線 */
}

/* --- clearfix --- */
.clearFix:after {
content: ".";
display: block;
height: 0;
clear: left;
visibility: hidden;
}
.clearFix {
min-height: 1px;
}
HTMLコード
<div class="section">

<ul class="sectionNav clearFix">
<li class="active"><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 class="textArea">

<p>【ボックス1】</p>
<p>ボックスの内容</p>
<p>ボックスの内容</p>

</div>

</div>


<div class="section">

<ul class="sectionNav clearFix">
<li><a href="#">タブ1</a></li>
<li><a href="#">タブ2</a></li>
<li class="active"><a href="#">タブ3</a></li>
<li><a href="#">タブ4</a></li>
<li><a href="#">タブ5</a></li>
</ul>

<div class="textArea">

<p>【ボックス2】</p>
<p>ボックスの内容</p>
<p>ボックスの内容</p>

</div>

</div>

備考

  • floatの解除には「clearfix」という手法を使用しています。
  • 「タブエリアの幅」の指定は省かないようにしてください(IEでの不具合を避けるため)。
  • 「タブエリアの幅」には、「ボックスの幅」から1px引いたサイズを指定してください。(タブエリアに1pxの左枠線を指定しているため)
  • アクティブタブの下側の枠線が表示されないようにするため、タブの下マージンを調節(マイナス)した上で、重なりの順序(z-index)を指定しています。
  • IE6での不具合(選択できる範囲がテキストのみになってしまう)を避けるため、a要素に position: relative を指定しています。


inserted by FC2 system