from :: Asahikawa Hokkaido

passer-by198

primetime pencil

2011/04/24


Posted

Bloggerでドロップダウン(2階層目)とフライアウト(3階層目)付きの自作画像ナビゲーションを実装する方法

現在…実装しているナビゲーションの解説はこちらです…

 マウスホバーで光源が追従しスクロールでページトップに固定される3階層ナビゲーション



概要&下準備


当サイトのナビゲーションは…

「Top Page」「8つのカテゴリーページ」「それ以外のページ」の…

10種類で構成されている「ul」「li」の入れ子構造になっていて…

ほんの少しだけ「JavaScript」を使います…

クリックされて「Top Page」か「8つのカテゴリーページ」が表示されると…

表示ページのテーマカラーの画像とボーダーラインに切り替わり…

1階層目にマウスを載せるとページのテーマカラー画像に切り替わり…




2階層目が有るカテゴリーでは…

メニューがドロップダウンで表示され…


3階層目が有るメニューはカテゴリーページのテーマカラーでハイライトされます…

2階層目にマウスを載せると画像が透過されて暗くなり Hover 状態を表現します…




ハイライトされた2階層目にマウスを載せると…

3階層目がフライアウトされます…


2階層目のドロップダウンメニューは他のカテゴリーを「Hover」するか…

「Hide Menu」をクリックすると順次消えていきます…

3階層目のフライアウトメニューは親カテゴリーの「Hover」…

3階層目が有る他の2階層目のメニューの「Hover」…

もしくは「Hide Menu」のクリックでしか消えません…

「ul」「li」の入れ子構造…の時点で…お気づきの方もいらっしゃると思われますが…

Internet Explorer 6 以下では正常に動作しません…

更に…対象は「レイアウトテンプレート」です…

では…下準備です…テンプレートのバックアップをお忘れなく…

表示位置は…「header-wrapper」の下の「crosscol-wrapper」です…

「デザイン」「HTMLの編集」「ウィジェットのテンプレートを展開」から…

「Ctrl + F」で「crosscol-wrapper」を検索して該当する箇所を…
<div id='crosscol-wrapper'>
<b:section class='crosscol' id='crosscol' showaddelement='yes'>
ここにガジェットが入ります
</b:section>
</div>
という構造にします…無い方は追加してください…実際の記述は…
<div id='crosscol-wrapper'>
<b:section class='crosscol' id='crosscol' showaddelement='yes'/>
</div>
と、してください…既に他の用途で使っている方は…

「crosscol」を「crosscol1」などにして記述してください…

次に「CSS」部分に以下を記述します…
#container1{width:770px;margin:15px auto 0;padding-left:25px;text-align:left;border-bottom:2px #F15B55 solid;}
「テンプレートを保存」して「デザイン」に戻ると…

「crosscol-wrapper」にガジェットを追加出来るようになっていますので…

「HTML / JavaScript」ガジェットを追加して…

タイトル無しで以下を記述して「保存」…
<div id="container1" align="center">
ここにタブメニューが入ります
</div>



ご自身のサイトを表示させると…

実際は他に何も設定していませんので…

ヘッダーの下に…「ここにタブメニューが入ります」の文字と…

太さ 2px 長さ 770px の赤い枠線が1本表示されれば OK です…

「CSS Sprites」設定編


「CSS Sprites」は…こちらの記事を参照して…

 Tonttu/テンプレート編集に必須な「CSS Sprites」作成ツールの使い方と「HTML」マークアップ

 Google Bloggerで絵文字を使うためのTips【CSS Sprites 編】


お好きなサイズ、色で構築してください…

各階層の画像サイズは階層毎にお好きなサイズで統一してください…

当サイトのタブメニュー画像の1階層目は…

カテゴリー別に「80 x 30」で…

「マウス ON 時の画像」「マウス OFF 時の画像」を登録しています…

タブメニュー画像の2階層目以降はページ読み込み時には非表示部分で…

透過を使ってマウスの「ON / OFF」を表現していますので…

「90 x 20」の1種類だけで OK です…画像作成には…

「OS」標準のソフトや「GIMP」などのフリーソフトでも勿論良いですが…

特化した機能のフリーソフトが手早く作れてお便利です…

「logo 画像作成」などで検索すれば色々出てきます…

タブメニューの画像サイズは自由に設定出来ますから…

近頃よく見かける「3D & 鏡面反射」などでも簡単に作成出来ますので…

クールな目立つタブメニューにしたい方は…

チャレンジしてみてはいかがでしょう…

自分のイメージ通りのサイトに仕上げるためにも…

この際だからロゴ画像とタブメニュー画像を…

ヘッダーを含めてデザイン、レイアウトする事をお奨めします…

コンテナのマークアップ


先ずは「header-wrapper」から「crosscol-wrapper」について…




デザインの基本設定を… 当サイトのように…

ヘッダーに融合させるのか…

それとも…大き目な画像で「crosscol-wrapper」の領域一杯を使うのかを決めます…

後者の場合は以下の基本設定は必要ありません…

1ページ目の下準備ガジェットを表示させながら…

上記画像を参考に…ご自身のサイトに合わせて調整してください…

「デザイン」「HTMLの編集」で「CSS」に以下を記述します…

領域設定の「CSS」


「プレビュー」で確認しながら納得のスタイルになったら…

1ページ目の下準備での「#container1」の「CSS」は…

「Home」でのコンテナとして使いますので…

ご自身の「Home」のテーマカラーに「#F15B55」部分を変更してください…

カテゴリー別に必要な数だけ「#container2」「#container3」……

コンテナを追加します…

タブメニューの1階層目以外のページ用に「#container0」も追加します…

全てのページで同じタブメニューでイイや…

ってな方は「#container0」だけで OK です…

当サイトでは…下記の様になります…

コンテナの「CSS」


コンテナ毎にガジェットが必要になります…

尚…「border-bottom」は「JavaScript」で動的に生成しています…

 「jQuery」「jQuery UI」第6回「Progressbar」動きのあるカラフルな区切り線として使用


タブメニューの「CSS」


下記は 当サイトでの記述ですので…

ご自身のこれまでの設定に合わせて適宜書き換えてください…

実際の記述にコメントアウト形式で解説をしていきますが…

完成したらコメントアウトや余分な改行などは削除してください…

タブメニューの「CSS」「CSS Sprites」


2012.05.01 追記

「id」の「selector」は…
解りやすくするために「subMenu」「endMenu」としていましたが…
ガジェットなどのデザイン変更による仕様変更があったのでしょうか
今回…サイトデザインの変更を行ったら動作しなくなりました…
大文字と小文字が混在しているとガジェットを保存すると…
全て小文字に変換されてしまいます…なので…
「submenu」「endmenu」と…上記コードを書き換えてご使用下さい…

同様の手順で 4階層目以降も作れますが HTML のマークアップとも相まって…

作業がかなり煩雑になりタイプミスなども増えるでしょうから…

先ずは横幅を一杯に使うのが得策かと…

尚…「subMenu」と「endMenu」は将来追加する事を考慮して…

全て記述しておくのも良いでしょう…

HTML マークアップ


先ずは以下を参照して…

1階層目のカテゴリー用 + それ以外のページ用のガジェットとして…

「デザイン」から「crosscol-wrapper」に…

「HTML/Java Script」ガジェットを追加します…

当サイトの場合は…

「9」+「1」で10個のガジェットになります…

判別し易いようにタイトルを付与して…中身はとりあえず「Test」で OK です…

 BloggerでGadgetにTitleを付与したうえでタイトルを表示させない記述


次に「デザイン」「HTMLの編集」「ウィジェットのテンプレートを展開」で…

今追加したガジェットを「Ctrl + F」でタイトルから検索して…

ガジェットを個別ページにのみ「表示させる」設定を行います…

 Bloggerでガジェットをトップ・ページにだけ表示する記述


例えば「Home」カテゴリーならこんな感じ…

個別ページにのみ「表示させる」設定


「それ以外のページ用のガジェット」は…

ガジェットを個別ページにのみ「表示させない」設定を行います…

1階層目のカテゴリーページ以外で表示されるように設定…こんな感じ…

個別ページにのみ「表示させない」設定


「全てのページで同じタブメニュー」にした方は…

3行目と8行目を削除したうえで…このガジェットだけで OK です…

続いてガジェットの中身です…

「CSS Sprites」で設定した各画像は…

「span」タグを使ってこんな感じにマークアップします…
<span class="「Home」マウス OFF 時のクラス名" title="Home"></span>
そして以下は「Home」での設定ですが…ご自身の設定に適宜書き換え…

対応するガジェットに貼りつけてください…

「Home」以外のガジェットの場合は…赤文字の2箇所だけ変更してください…

「コンテナの番号」は「container2」「container3」…ってな感じに…

設定した番号を割り振ってください…

id="selected"」はページ表示時に…

マウス ON 時の画像にロールオーバーさせるための記述ですので…

ガジェットによって対応する「li」箇所に記述してください…

「container0」の場合だけ記述の必要はありません…

「Home」ガジェットの中身


2012.05.01 追記

「id」の「selector」は…「subMenu」「endMenu」から…
「submenu」「endmenu」と…上記コードを書き換えてご使用下さい…

最後は「</body>」直前に以下の「JavaScript」を記述…

「JavaScript」


「テンプレートを保存」して完了です…大変お疲れ様でした…

こちらの記事もどうぞ…

 jQuery UI Extra-1 : 「Menu」part2 マウスホバーでフライアウトする横型ナビゲーション

 「onmouseover」「onmouseout」属性で構築する多階層のドロップダウンナビゲーション



0 Comments :

Post a Comment :: Click!!

コメントを投稿

韓国大統領 月山明博(李明博)の…天皇陛下への「不敬発言」
痛惜の念などという単語一つを言いに来るのなら、来る必要はない。
日王は韓国民に心から土下座したいのなら来い。
重罪人にするように手足を縛って頭を足で踏んで地面に擦り付けて謝らせてやる。
重罪人が土下座もしない、言葉で謝るだけならふざけた話だ。
そんな馬鹿な話は通用しない。
それなら入国は許さないぞ。
偽左翼マスメディアの情報操作手法
手法 用例 手法 用例 手法 用例 手法 用例
連想の創出 愛国者に対して「軍靴の音が聞こえそうだ」などと揶揄し否定的な印象を与える… コメント 人々を一定の方向に誘導するために「事実とは異なる解釈」をコメントさせたり「社説」にする… プレゼンス効果 現場からの中継や縮小ジオラマなどで「臨場感」を演出し「やらせ」も交えて信用されやすくする… 分類表 一部の「ネット右翼」が批判しています…のように決まった単語・フレーズで事象を分類して極小化・極大化する…
撹乱 「第三極も含めて政党が乱立して訳が分かりません…」などと連日「情報ノイズ」で溢れさせ興味自体を失わせる… 癒着提案 TBS「安倍官房長官印象操作映像事件」のように「個別の事実」を「継ぎ接ぎ」して「誤った印象」を植え付ける… 匿名の権威 「信頼すべき消息筋によれば…」のように情報元を明かす必要がない事を逆手に取り記事の内容に権威を与える… 日常会話 お隣の「韓国」では…のように本来否定的な要素「韓国」を日常会話のように繰り返し心理的習熟効果で反応を麻痺させる…
感情共鳴 コンサートで開催場所の地名を大声で繰り返し叫ぶ…などのように「デモ」「集会」などで群集を理性ではなく感情レベルで反応させる… 歴史の書き換え 民主党の「天皇制廃止」「戸籍法廃止」「夫婦別姓」などの愛国心を低下させるための国家・民族全体に対する長期的な情報操作… 感情整列 この時間にご覧になっている貴方だけに限定100セットだけ…などと「一定のシチュエーション」を用意して群集の感情を「均一化」させる… 一次効果 「朝日新聞の従軍慰安婦捏造問題」「iPS細胞での読売新聞大誤報」など「最初に発信された情報」は嘘でも捏造でも信用されやすいという原理…
ブーメラン 坂本龍一・山本太郎などの著名人を使い原発管制報道に対する「自由の闘士」を作り出し国力を削るために「愛国者」を装った抗議運動を展開する… 心理的ショック 日本は豊かなのだと錯覚させ更に絞り取るために「飢餓」を伝え…日本は悪い事をしたと日本人を自虐的に思い込ませるために繰り返し「戦争」を伝えます… 半真実 「マニュフェストが実現出来なかったのは自民党の負の遺産のせいで民主党がダメだった訳ではない…」のように嘘の中に一面的な真実を織り込み全体を真実に見せる… フィードバック 「支持政党無しの無党派層は過去最高」という結果を得るために世論調査の回答項目に「民主党もダメだけど自民党もダメ」という項目を設定し全体の意見に偽装する…
すり替え 「傷害」を「いじめ」「窃盗」を「万引き」「殺人事件」を「交通事故」「テロリスト」を「レジスタンス」「略奪事件」を「抗議デモ」など受け入れ易い言葉に置き換える婉曲手法… 脅威の創出 尖閣購入時に「中国の脅威」は民主党政権以降に尖鋭化していたにもかかわらず恰も「都知事発言以降に尖鋭化した」かの如く捏造し民主党には他に選択肢は無かったと責任転嫁… 社会的同意 首相の靖国参拝に「外国」から激しい反発が起こっている…などと…特定アジアだけの意見を恰も世界全体が同意していると錯覚させる…「人権擁護法案」「外国人参政権」などもこの手法… 側面迂回 民主党の原発事故対応では線量などの周辺情報は正確に報じられ枝野幸男の「直ちに健康に影響を及ぼすものではない…」の嘘の信憑性を高めメルトダウン・風向きなどの核心部分は隠蔽された…
虚偽類似 「視聴率低迷は若者のテレビ離れのせい…」「CDが売れないのは違法ダウンロードのせい…」「紅白歌合戦に韓流スターが出演できないのは日本の右傾化のせい…」など都合の良い「原因と結果の因果関係」を作り出す… 事実確認 原発安全神話を作り出したのも公共事業にジャブジャブ税金をつぎ込んだのも自民党です…など…「一面的な事実」を先に述べ「事実確認」させ…自民党政権に逆もどりして良いんですか?…と未来を誤認・錯覚させる… 毒入りサンドウィッチ 「白川総裁が自民党の経済政策を批判」「安倍総裁の経済政策発言を市場が好感し円安に振れ株価は年初来の高値」「一方でハイパーインフレを懸念する声も」…のように序文と結論の否定的報道で肯定的な報道を挟み肯定的な報道の意義を低下させる… 砂糖入りサンドウィッチ 毒入りサンドウィッチの逆の手法…
  偽左翼マスメディアの情報操作手法
「jQuery」と「jQuery UI」で HTML に彩りを添えよう…

「導入」「Button」「Accordion」「Tabs」「Effects/Slide」
「Progressbar」「Dialog」「Tooltip」「Menu」 「Extra」 / 公式「Widgets」以外の「jQuery UI」スクリプト
Blogger Template Customize Universal / INDEX
Blogger テンプレート・カスタマイズ / 全般を解説
高速化・最適化対策の結果と備忘録
Scroll Top