1. Home
  2. Webテンプレート
  3. メニュー
  4. 横並びメニュー 均等幅4

横並びメニュー 均等幅4



横並びのメニューを作成するサンプルコードです。

光沢感のある背景画像を設定しています。


表示例

ヘッダ付近での使用を想定した横型のメニューです。

  • floatを指定して、li要素を横に並べています。
  • 背景画像は、ナビゲーションバーとメニューエリアの2ヵ所に設定されています。
  • 各項目の幅は均等になります。
  • 「項目の幅」は、項目の数に合わせて調整してください。このサンプルでは5つの項目があるので、1つの幅を20%に指定しています。

使用している画像

hor_menu4_back1.gif hor_menu4_back1.gif

画像へは直接リンクしないでください。ダウンロードしてから使用してください)

画像の制作について

コード

CSSコード


/* --- ナビゲーションバー --- */
div.nav {
width: 100%; /* ナビゲーションの幅 */
background: #000000 url(hor_menu4_back1.gif) repeat-x top; /* ナビゲーションの背景 */
border-top: 1px #333333 solid; /* 上境界線 */
border-bottom: 1px #666666 solid; /* 下境界線 */
font-size: 80%;
}

/* --- メニューエリア --- */
div.nav ul.nl {
width: 600px; /* メニューの幅 */
margin: 0 auto; /* センターに配置 */
padding: 0;
background: #000000 url(hor_menu4_back1.gif) repeat-x top; /* メニューの背景 */
border-left: 1px #333333 solid; /* メニューの左境界線 */
border-right: 1px #666666 solid; /* メニューの右境界線 */
list-style-type: none;
text-align: center;
}

/* --- メニュー項目 --- */
div.nav ul.nl li {
width: 20%; /* 項目の幅 */
float: left;
}

/* --- リンク --- */
div.nav ul.nl li a {
display: block;
position: relative; /* IE6用 */
padding: 9px 2px; /* リンクエリアのパディング(上下、左右) */
border-left: 1px #666666 solid; /* リンクエリアの左境界線 */
border-right: 1px #333333 solid; /* リンクエリアの右境界線 */
text-decoration: none; /* テキストの下線(なし) */
font-weight: bold; /* 太字 */
}
/* --- リンクテキストの色 --- */
div.nav ul.nl li a:link {
color: #ffffff;
}
div.nav ul.nl li a:visited {
color: #ffffff;
}
div.nav ul.nl li a:hover {
color: #ff8000;
}
div.nav ul.nl li a:active {
color: #ff8000;
}

/* --- clearfix --- */
.clearFix:after {
content: ".";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
.clearFix {
min-height: 1px;
}

HTMLコード


<div class="nav">

<ul class="nl clearFix">
<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>

備考

  • floatの解除には「clearfix」という手法を使用しています。
  • リンクテキストの左右には余裕を持たせてください。ギリギリに設定すると、文字サイズを変更した際に折り返しが入ってしまう場合があります。
  • IE6での不具合(クリックできる範囲がテキストのみになってしまう)を避けるため、a要素に position: relative を指定しています。

メニュー

ページの先頭へ