from :: Asahikawa Hokkaido

passer-by198

primetime pencil

2014/07/15


Posted

【CSS3】「JavaScript」不要で「display:table;」「ease-in-out」で構築する多階層ナビゲーション


概要


red-team-design
CSS3 animated dropdown menu 


20165月の時点で暗号化接続未対応なのでリンク削除

通常…実装していない…他サイトの…

デザイン系のチュートリアルにリンクは入れないのですが

あまりに出来の良いナビゲーションなので…ご紹介…ってか有名ですよね

しかも…2011.11.14…の記事です…

しかしながら…古いブラウザが激減して行くであろう…

今だからこそ…的な側面もあります…私が…近頃…

「CSS3」系の記事を頻繁に書いている事由でもあります…

上記サイトでは…「JavaScript」も用意されてはいますが…

Internet Explorer の下位バージョンのブラウザ判定用ですね…

私的には…「JavaScript」や下位バージョンへの配慮は不要




…と考えていますので…

そういった部分は省き……尚且つ…

このナビゲーションの致命的な欠点…

マウスホバーしてみなければ下位階層が存在するのか判別出来ない…という事を…

下位階層が存在する場合は三角形を付与する事で解決して行きます…

上記サイトでは…懇切丁寧な解説とデモや「JavaScript」がありますので…

触ってみて納得出来たなら…以下をお読みになる必要はありません…

仮に…「Table Navigation」という名称で解説を進めていきます…

基本的に…他サイトのチュートリアルですので…

掘り下げた解説はしませんのでご了承を…

 「display:table;」「ease-in-out」で構築する多階層ナビゲーション【ボトム設置編】



「Table Navigation」のサンプル


三角形を付与するなど…改変して調整した「Table Navigation」のサンプルです…


「Table Navigation」の「CSS」


「Table Navigation」の「CSS」



下位階層が存在する場合に三角形を付与する記述は…




1階層目が…22行目の…

.nav-table .triangle-rs > a:after{…}

…で…2階層目以降が…23行目の…

.nav-table .triangle-re > a:before{…}

…ですが…23行目だけでは…

こんな感じになってしまうので…

24行目で修正しています…

「Table Navigation」の「HTML」マークアップ


「Table Navigation」の「HTML」マークアップ



ナビゲーション全体の「ul」に…

「Table Navigation」のクラス名「class="nav-table"

下位階層がある…1階層目の「li」に…

南向き三角形のクラス名「class="triangle-rs"

下位階層がある…2階層目以降の「li」に…

東向き三角形のクラス名「class="triangle-re"

…を…記述して下さい…

おわりに…


上記サイトでは…ブラウザ判定に…

「jQuery」の「$.browser.msie」を使っています…

なので…「不要」とまで書きましたが…まぁ…導入に際しては…

Internet Explorer 下位バージョンへの対応を切り捨てる

…という覚悟で臨んで下さいな… ( ̄ー ̄) 邪笑®

以上です…最後までお読みいただきましてありがとうございます…


0 Comments :

「jQuery」と「jQuery UI」で HTML に彩りを添えよう…


「導入」「Button」「Accordion」「Tabs」「Effects/Slide」
「Progressbar」「Dialog」「Tooltip」「Menu」
「Extra」 / 公式「Widgets」以外の「jQuery UI」スクリプト
Blogger Template Customize Universal / INDEX

Blogger テンプレート・カスタマイズ / 全般を解説
高速化・最適化対策の結果と備忘録