ページ上部に固定するメニューバーを作る
さて、スクリプトと直接の関係はありませんが、ページ上部に常に固定される半透明のメニューバーを作る方法も簡単に解説しておきます。メニューバーを作るHTMLは、ページの先頭に1回だけ記述します。CSSを使って、常に画面上部に表示されるよう装飾しておくことで、どれだけスクロールしても常にメニューが利用できるようになります。
まず、メニュー項目は、ul要素とli要素を使って作る「リスト」の形で作成しておきます。ソースは以下の通りです。
<div id="menubar"> <ul> <li><a href="#homeP" class="scrollable">HOME</a></li> <li><a href="#page1" class="scrollable">PAGE.1</a></li> <li><a href="#page2" class="scrollable">PAGE.2</a></li> <li><a href="#page3" class="scrollable">PAGE.3</a></li> </ul> </div>CSSで装飾するために、div要素にid名「menubar」を付加しています。メニューの各項目(li要素)の中身は、a要素を使ってリンクにしておきます。リンクの記述方法は、前ページの手順4で説明したとおり、「jQuery Scrollable Link」用の書き方で記述して下さい。
■メニューバーの形に装飾するCSSソース:
次に、上記のHTMLソースを「メニューバー」に見えるように装飾しましょう。以下のようにCSSソースを記述します。各記述の意味は、ソース中のコメントをご参照下さい。
/* -------------------- */ /* ▼メニューバーの作成 */ /* -------------------- */ #menubar { /* ▼ページの上部一杯に固定する */ position: fixed; top: 0; left: 0; width: 100%; /* ▼背景を白色にして40%ほど透過させる */ background-color: white; /* ←背景色 */ opacity: 0.6; /* ←不透明度 */ /* ▼メニューを真ん中に寄せる */ text-align: center; } #menubar ul { /* ▼余計な余白を削除 */ margin: 0px; padding: 0px; /* ▼リストの先頭記号を削除 */ list-style-type: none; }上記の記述で、(ul要素とli要素で作る)リストが「メニューバー」のように表示されます。バーの背景色を変更したい場合はbackground-colorプロパティの値を、バーの透明度を変更したい場合はopacityプロパティの値を、それぞれ自由に修正して下さい。さらに各「メニュー項目」を装飾するため、続けて以下のCSSソースも記述します。
/* ------------------------------ */ /* ▼メニュー項目(ボックス)の作成 */ /* ------------------------------ */ #menubar ul li { font-size: 30px; /* メニューの文字サイズ */ line-height: 1.2; /* メニューの行高 */ display: inline-block; /* 各項目を横方向に並べる */ *display:inline; *zoom:1; /* 上記のIE7対策 */ } /* ---------------------------- */ /* ▼メニュー項目(リンク)の装飾 */ /* ---------------------------- */ #menubar ul li a { text-decoration: none; /* リンクの下線を消す */ display: block; padding: 0px 0.3em; /* 左右に余白を設ける */ color: blue; /* リンクの文字色 */ } #menubar ul li a:hover { /* ▼リンクの上にマウスが載った際に装飾を変更 */ background-color: green; color: white; }メニュー項目の大きさを修正したい場合は、font-sizeプロパティの値やline-heightプロパティの値を修正して下さい。上記の場合は、メニューの文字は「高さ30px」の大きさで表示されます。行の高さ(line-height)には「1.2」を指定しているため、メニュー項目の高さは36pxになります(=30pxの1.2倍)。メニュー項目の上にマウスを載せた際の配色は、上記ソースの最後に記述したbackground-colorやcolorプロパティの値で指定しています。自由に修正して下さい。
上記のCSSソースによって、閲覧者がどれだけスクロールしても必ずページ上部に固定される「メニューバー」ができあがりました。
■表示例:
このメニューバーを使ったサンプルページは、冒頭でもご紹介した右図の通りです。上記の解説と併せて、サンプルページのHTMLソースもご参照頂くと、より分かりやすいでしょう。
→1画面単位でスクロールするサンプルページ