- ベストアンサー
HTMLタブの作り方と修正方法
- http://archiva.jp/test/html/tab-menu.htmlのタブの作り方で、選択されたタブのボックスの色を修正する方法を教えてください。
- 具体的には、page1~4のタブが選択された時には選択されたタブのボックスの色が赤くなり、選択されていないタブのボックスの色は白くなります。また、page5のタブが選択された時には、選択されたタブのボックスの色は青から赤に変更されます。
- 修正するためには、http://archiva.jp/test/html/tab-menu.htmlのソースコードのどの部分を変更すれば良いのでしょうか。具体的な修正方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ソースのどの部分を修正すればいいのでしょうか? CSSのクラス定義部分↓の #tab li.present a { border-color: #333; color: #000; } javascriptの↓の for(var i=0; i<pages.length; i++) { if(i == num) { pages[num].style.display = 'block'; tabs[num].className = 'present'; } else{ pages[i].style.display = 'none'; tabs[i].className = null; } } の部分の修正・追加ですね。 (ヒント) ※javascriptでクリックされたタブのクラス名に'present'を付加し、 選ばれてないタブのクラス名をnullにしてます。
その他の回答 (1)
- fujillin
- ベストアンサー率61% (1594/2576)
前回の回答者様の「おまけ」を応用すればできそうな気がします。 http://okwave.jp/qa/q6354633.html <li><a href="#page5" class="tab5">Page_5</a></li> とでもしておいて、CSSに以下を追加 .tab5 { background-color: blue; } #tab li a:hover, #tab li.present a { background-color: red; } ホバー時の挙動が条件にないのでオリジナルのまま(=選択時と同じ色)にしていますが、前回回答者様のように #tab li a:hover と #tab li.present a を別々に指定することで分けることも可能です。 「CSS」、「hover」などをキーにぐぐってみれば、CSSに関してのいろいろな応用の方法が解説されていると思いますので、是非調べてみてください。