ホームページ作成/装飾・レイアウトの動的変更 (HTML,CSS,JavaScript)

角丸タブを使ったタブボックスを作る(3ページ目)

閲覧者が「タブ」をクリックすると、ページを移動することなく一瞬でボックス内の表示内容が切り替わる「タブボックス」を、上部の角を丸くした(タブらしく見える)タブを使って作ってみましょう。《まとめ編》

西村 文宏

執筆者:西村 文宏

ホームページ作成ガイド

角丸タブを使ってタブボックスを作るソース
(スタイルシート編)

記事Aでは、「表示領域全体の装飾」・「タブそのものの装飾」・「タブに対応するボックスの装飾」の3つの装飾を行うスタイルシートを記述しました。 先ほど、「タブそのものを作るHTML部分」だけを記事Bのものに変更しましたから、スタイルシートも「タブそのものの装飾」の部分だけ記事Bのものに差し替えます。

記事Aでご紹介したスタイルシートには、以下のように「tabsクラスを付加したp要素」に対する装飾を行っています。これらはここでは不要です。

/* ▼タブ部分 */
p.tabs { margin: 0px; padding: 0px; }
p.tabs a { ~省略~ }
p.tabs a.tab1 { ~省略~ }
p.tabs a.tab2 { ~省略~ }
p.tabs a.tab3 { ~省略~ }
p.tabs a:hover { ~省略~ }

上記の代わりに、記事Bでご紹介した「タブそのものの装飾」(=ul要素とli要素を使ったリストの装飾)を記述します。

/* タブ部分 */
div.tabbox ul.tabs { 
   margin:  0px; /* 外側の余白を消す */
   padding: 0px; /* 内側の余白を消す */
   width: 400px; /* 横幅 */
}
div.tabbox ul.tabs li {
   margin: 0px;  /* 各項目周囲の余白をなくす */
   padding: 0px; /* 各項目内側の余白をなくす */
   list-style-type: none; /* 先頭記号を消す */
   float: left;  /* リスト項目を横方向に並べる */
   width: 120px; /* タブのデフォルトの横幅 */
   /* 左上の角丸 */
   background-image: url("tab-base.gif");
   background-repeat: no-repeat;
   background-position: left top;
}
div.tabbox ul.tabs a { 
   display: block; /* ブロックレベルに */
   padding: 5px 0px;      /* 内側の余白 */
   height: 20px;          /* タブの高さ */
   text-align: center;    /* 中央寄せ */
   text-decoration: none; /* 下線を消す */
   /* 右上の角丸 */
   background-image: url("tab-right.gif");
   background-repeat: no-repeat;
   background-position: right top;
}
div.tabbox ul.tabs li.tab1 { background-color: blue; }
div.tabbox ul.tabs li.tab2 { background-color: #aaaa00; }
div.tabbox ul.tabs li.tab3 { background-color: red; width: 90px; }
div.tabbox ul.tabs a:link ,
div.tabbox ul.tabs a:visited { color: white; }
div.tabbox ul.tabs a:hover { color: yellow; text-decoration: underline; }

さらに、タブに対応するボックス部分で回り込みを解除しなければならないため、以下の装飾を加えます。

div.tabbox div.tab { clear: left; }

なお、角を丸くするためには以下の2つの画像も使います。この画像を用意しないと角が丸くなりませんので注意して下さい。
※下記の2画像はご自由にダウンロード(コピー)してご活用下さい。

  • 画像1(tab-base.gif):
  • 画像2(tab-right.gif):

前ページのHTMLと合わせて表示すると、以下のように見えます。

(タブ1の中身。何でも記述できます。)

(タブ2の中身。HTMLタグも記述可能。)

(タブ3の中身。いくつでも追加可能。)

記事Aでご紹介したスタイルシート全体を含めて表示すると、以下のように見えます。

(タブ1の中身。何でも記述できます。)

(タブ2の中身。HTMLタグも記述可能。)

(タブ3の中身。いくつでも追加可能。)

これで、角丸タブの表示ができました。
あとは、記事Aでご紹介したJavaScriptソースを加えれば完成です。

次のページには、HTML・スタイルシート・JavaScript全体のソースを掲載しています。 コピー&ペーストして使ってみる際にご活用下さい。(記事A・記事Bと重複する内容も含めてすべてのソースを掲載しています。)

  • 前のページへ
  • 1
  • 2
  • 3
  • 4
  • 次のページへ

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます