Movable Type 備忘録
moo.fxでサイドバー折りたたみやってみる
- Next Page: jQueryでフェードするメッセージ表示してみる
- Prev Page: jQueryでサイドバー折りたたみをやってみる
こんばんわ^^
訪問者さんからのご質問で、このサイトの
blogroll(リンク集)で使ってるサイドバーの折りたたみのやり方を教えてくださいとのことだったので、この場をお借りしてご説明します。
ちなみに、サイトマップでも使用してますの。
構造の説明
基本的には、こちらのmoo.fx でアコーディオン表示でご紹介した方法を、サイドバーでも使ってるだけですの。
なので、必要な JavaScript のインストールや、アップロードについては上記ページを参考にしてください。
基本的な構造は上記ページでもご紹介してますが、以下のようになってます。
<div id="content">
<div class="tab"><a href="javascript:void(0);">タブ1 タイトル</a></div>
<div class="tab"><a href="javascript:void(0);">タブ2 タイトル</a></div>
<div class="tab"><a href="javascript:void(0);">タブ3 タイトル</a></div>
<div class="boxholder">
<div class="box">タブ1に対するコンテンツをここに記述します</div>
<div class="box">タブ2に対するコンテンツをここに記述します</div>
<div class="box">タブ3に対するコンテンツをここに記述します</div>
</div><!-- boxholder -->
</div><!-- content -->
<div class="tab">~</div> がタブメニューにあたります。
そして、各タブメニューのコンテンツ(内容)は、<div class="boxholder">~</div> で括られた <div class="box">~</div> がコンテンツになります。
ですので、<div class="tab">~</div> の数 = <div class="box">~</div> になっていないといけません ( ̄∇ ̄)b
そして、各タブ、各タブのコンテンツを <div id="content">~</div> でくくってあげれば完成です (●>∀<●)/
たとえば、最近のエントリ、最近のコメントおよび、最近のトラックバックをタブメニューにしたい場合には、以下のようになります。
XHTML
<div id="moofx-content"><!-- ▼タブメニュー▼ --><div class="moofx-tab"><a href="javascript:void(0);">最近のエントリ</a></div><div class="moofx-tab"><a href="javascript:void(0);">最近のコメント</a></div><div class="moofx-tab"><a href="javascript:void(0);">最近のトラックバック</a></div><!-- ▲タブメニュー▲ --><div class="moofx-boxholder"><!-- ▼最近のエントリ▼ --><div class="moofx-box"><ul><MTEntries><li><a href="<$MTEntryPermalink$>" title="<$MTEntryTitle$>"><$MTEntryTitle$></a> <$MTEntryDate language="en" format="%m/%d"$></li></MTEntries></ul></div><!-- ▲最近のエントリ▲ --><!-- ▼最近のコメント▼ --><div class="moofx-box"><ul><MTEntries recently_commented_on="5"><li><a href="<$MTEntryLink$>" title="<$MTEntryTitle$>"><$MTEntryTitle$></a><ul><MTComments lastn="5"><li><a href="<$MTEntryLink$>#c<$MTCommentID$>"><MTCommentAuthor></a> <$MTCommentDate format="%m/%d"$></li></MTComments></ul></li></MTEntries></ul></div><!-- ▲最近のコメント▲ --><!-- ▼最近のトラックバック▼ --><div class="moofx-box"><ul><MTPings lastn="5"><li><a href="<$MTPingURL$>" title="<$MTPingTitle$>"><$MTPingTitle$></a> from <$MTPingBlogName$> <$MTPingDate format="%m/%d"$></li></MTPings></ul></div><!-- ▲最近のトラックバック▲ --></div><!-- moofx-boxholder --></div><!-- moofx-content -->
上記のようにすればタブメニューとしてまとめることができます。
スタイルシート
次はスタイルシートになります。
以下は実際にわたしのサイトで使用しているスタイルになります。
スタイルシート
div#moofx-content {width: 352px; /*全体の横幅になります*/height: 100%;}div#moofx-content div.moofx-tab {margin: 0;padding: 0;width: auto;float: left; /*タブメニューを横に並べます*/text-align: center; /*テキストをセンタリングします*/background-color: #f0edb6; /*タブメニュー背景色です*/border: 1px solid #e4ddb2; /*ボーダーラインです*/}div#moofx-content div.moofx-tab a {padding: 0 .66em; /*各自のお好みで調整してください*/height: 2.5em; /*タブメニュー高さになります*/display: block;font-weight: 700;line-height: 2.5;}div#moofx-content div.moofx-tab a:hover {color: #ffdc6e; /*ホバー時の前景色です*/background-color: #7d022b; /*ホバー時の背景色です*/}div#moofx-content div.moofx-boxholder {clear: both; /*削除不可です*/}div#moofx-content div.moofx-box ul {margin: 0;padding: 0;list-style: none;}div.moofx-box ul li {margin: 0;padding: 0;line-height: 2.4; /*各コンテンツの高さです*/}div.moofx-box ul li a {display: block;text-decoration: none;}
かいつまんでコメントしてますが、こんなかんじでスタイルを定義してます。
上記を参考に各自のテンプレートに合わせればよろしいかと (^▽^;)
以上で moo.fx によるサイドバー折りたたみを行うことができます。
では、では。
Trackback Pings(0)
No trackbacks found.
Comments(3)
- #2: Posted by パズ [RES]
できましたっ


分かりやすい説明ありがとうございます。
できましたっ!
まだCSS微調整中ですが。
また利用させてもらいます。