<div class="at_main" id="at_main"> <dl> <dd> <h2>純粋な CSS ポップアップ メニュー作成の原理と実装 By shawl.qiu</h2> <br>要約: <br>この記事では、CSS を使用して Opera に適した複数スタイルのポップアップ メニューを作成する方法を紹介します。 Firefox および IE<br>## #説明: <br>CSS ポップアップ メニューを記述する重要なポイントは、マウスがターゲット上に移動したときに非表示のラベルを表示することです。<br>非表示にするラベルは非表示です。 display:none; 属性を使用します。<br>トリガー表示非表示タグは主に :hover 属性を使用し、非表示タグを表示するには display:block; を使用します。<br><br>ただし、ブラウザーが CSS を一貫してサポートしていないためです。## #Opera または Firefox の場合、純粋な CSS メニューを作成できます。これらは、任意のタグの :hover 属性をサポートします。<br>IE ブラウザの場合、:hover は a タグでのみ機能しますが、スクリプトの onmouseover、onmouseout を使用して、他のタグの :hover 属性をシミュレートします。<br>したがって、IE に適した CSS ポップアップ メニューを作成するには、いくつかのスクリプトを使用する必要があります。<br><br>ディレクトリ: <br>1. CSS ポップアップの作成縦列の右側のメニュー <br>1.1 Opera、Firefox の純粋な CSS ポップアップ メニューに基づいています<br>1.2 IE、Opera、Firefox と互換性のある CSS ポップアップ メニュー (スクリプト実装)<br># ##2. 水平下部ポップアップ CSS メニューを作成する <br>2.1 Opera、Firefox メニューに基づいた実際の純粋な CSS ポップアップ <br>2.2 IE、Opera、Firefox と互換性のある CSS ポップアップ メニュー (スクリプト実装) <br><br>3. 結論<br><br>4. プレビュー<br><br>shawl.qiu<br>2006 -10-01<br><br>http://blog.csdn.net /btbtd<br><br><a href="http://blog.csdn.net/btbtd" target="_blank">1. 垂直行の右側にポップアップする CSS メニューを作成します。 </a><br>1.1 True Based Opera、Firefox の純粋な CSS ポップアップ メニュー<br> <br><br>行番号<br> <ol class="linenum"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" <STRONG>" </STRONG>http://www.w3.org/TR/html4/loose.dtd<LI>"> <li><html> <a href="http://www.w3.org/TR/html4/loose.dtd" target="_blank"><head> </a><meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </li> <li><title>無題のドキュメント</title> </li> <li><style type="text/css"> </li> <li>/*<![CDATA[*/ /* shawl.qiu 純粋な CSS ポップアップ メニューのデモ */ <LI> body{ margin:0px auto; width:768px; /* 定義ページが中央に表示されます*/} <LI> *{text-decoration:none! important; /* 下線を表示しないようにすべてのリンクを定義します */}<LI> .pmVerticalRightOut{background-color:#fff! important; /* メイン メニュー フィールドの背景色を定義します */} <LI> .pmVerticalRightOut .level{ /* 第 1 レベルのカテゴリ属性を定義します */ <LI> width:120px; /* 幅 */ <LI> 高さ:17; /* 高さ */ <LI> Position:relative; /* 表示位置は相対位置です */ <LI> display:block; /* ブロックモードで表示 */ <LI> 背景色:#D8D8D8; /* 背景色 */ <LI>padding:0px 2px; /* テキスト内のパッチ間隔 */ <LI> margin:0px 0px 1px 0px; /* メニュー外のパッチ間隔 */ <LI> } <LI> .pmVerticalRightOut .level:hover { /* マウスが第 1 レベルのメニュー上に移動したとき */ <LI> 背景色:#6633FF; /* 背景色 */ <LI> color:#FFFFFF; /* テキストの色 */ <LI> } <LI> .pmVerticalRightOut .level_{display:none; /* 第 2 レベルのカテゴリはデフォルトで非表示になります */} <LI> <LI> .pmVerticalRightOut .level:hover .level_ { /* マウスが上に移動したときに 2 番目のカテゴリの表示をトリガーします */ <LI> display:block; /* ブロック単位で表示 */ <LI> left:124px; /* 第 1 レベルのカテゴリを基準にして表示される位置 */ <LI> width:120px; /* 幅 */ <LI> height:auto; /* 高さ */ <LI> top:0px; /* 第 1 レベルのカテゴリの先頭を基準とした値 */ <LI> 背景色:#EFEFEF; /* 背景色を定義します */ <LI> Position:absolute; /* 位置は絶対位置です */ <LI> }<LI> .pmVerticalRightOut .level:hover .level_ .level_title { <LI> /* 二次カテゴリのタイトル スタイルを定義します */ <LI> font-weight:bold; /* フォントを太字にします */ <LI> 背景色:#A7ADFE; /* 背景色 */ <LI> color:white; /* テキストの色 */ <LI> } <LI> .pmVerticalRightOut .level:hover .level_ a:hover { <LI> /* 二次カテゴリのリンクの表示スタイルを定義します */ <LI> 背景色:#F83658; /* 背景色 */ <LI> color:white; /* テキストの色 */ <LI> } <LI> .pmVerticalRightOut .level_ * { <LI> /* すべての第 2 レベルのカテゴリの共通属性を定義します */ <LI> display:block; /* ブロック単位で表示 */ <LI> color:black; /* テキストの色 */ <LI>padding:0px 2px; /* 内側のパッチ間隔 */ <LI> }<LI>/*]]>*/ </li> <li></style> </li> <li></head> </li> <li><body> </li> <li><p/><p/><p/><p/><p/> </li> <li><div class="pmVerticalRightOut" id="pmVerticalRightOut"> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level&id=1">level_ title 1</a> </li> <li> <a href="?cat=level&id=2">level_ title 2</a> </li> <li> <a href="?cat=level&id=3">level_ title 3</a> </li> <li> <a href="?cat=level&id=4">level_ title 4</a> </li> <li> <a href="?cat=level&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 1</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_1&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_1&id=2">level_ title 2</a> </li> <li> <a href="?cat=level_1&id=3">level_ title 3</a> </li> <li><a href="?cat=level_1&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_1&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 2</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_2&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_2&id=2">level_ title 2</a> </li> <li> <a href="?cat=level_2&id=3">level_ title 3</a> </li> <li> <a href="?cat=level_2&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_2&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 3</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_3&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_3&id=2">level_ title 2</a> </li> <li><a href="?cat=level_3&id=3">level_ title 3</a> </li> <li> <a href="?cat=level_3&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_3&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 4</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_4&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_4&id=2">level_ title 2</a> </li> <li> <a href="?cat=level_4&id=3">level_ title 3</a> </li> <li> <a href="?cat=level_4&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_4&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li></div> </li> <li></body> </li> <li></html> </li> </ol> <br>1.2 兼容 IE, Opera, Firefox の CSS 弹出菜单(脚本实现)<br> <ol class="linenum"> <strong>linenum</strong> <li><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" <LI>" <A href="http://www.w3.org/TR/html4/loose.dtd" target=_blank>http://www.w3.org/TR/html4/loose.dtd</A>"> </li> <li><html> </li> <li><head> </li> <li><meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </li> <li><title>Untitled Document</title> </li> <li><style type="text/css"> </li> <li>/*<![CDATA[*/ /* shawl.qiu pure css popup menu demo */ <LI> body{ margin:0px auto; width:768px; /* 定义页面居中显示,*/} <LI> *{text-decoration:none!important; /* 定义所有链接不显示下划线 */} <LI> /* ------------------- start 针对 Opera, Firefox 的 CSS 弹出菜单 -------------------*/<LI> .pmVerticalRightOut{background-color:#fff! important; /* メイン メニュー フィールドの背景色を定義します */} <LI> .pmVerticalRightOut .level{ /* 第 1 レベルのカテゴリ属性を定義します */ <LI> width:120px; /* 幅 */ <LI> 高さ:17; /* 高さ */ <LI> Position:relative; /* 表示位置は相対位置です */ <LI> display:block; /* ブロックモードで表示 */ <LI> 背景色:#D8D8D8; /* 背景色 */ <LI>padding:0px 2px; /* テキスト内のパッチ間隔 */ <LI> margin:0px 0px 1px 0px; /* メニュー外のパッチ間隔 */ <LI> } <LI> .pmVerticalRightOut .level:hover { /* マウスが第 1 レベルのメニュー上に移動したとき */ <LI> 背景色:#6633FF; /* 背景色 */ <LI> color:#FFFFFF; /* テキストの色 */ <LI> } <LI> .pmVerticalRightOut .level_{display:none; /* 第 2 レベルのカテゴリはデフォルトで非表示になります */} <LI> <LI> .pmVerticalRightOut .level:hover .level_ { /* マウスが上に移動したときに 2 番目のカテゴリの表示をトリガーします */ <LI> display:block; /* ブロック単位で表示 */ <LI> left:124px; /* 第 1 レベルのカテゴリを基準にして表示される位置 */ <LI> width:120px; /* 幅 */ <LI> height:auto; /* 高さ */ <LI> top:0px; /* 第 1 レベルのカテゴリの先頭を基準とした値 */ <LI> 背景色:#EFEFEF; /* 背景色を定義します */ <LI> Position:absolute; /* 位置は絶対位置です */ <LI> } <LI> .pmVerticalRightOut .level:hover .level_ .level_title { <LI> /* 定义二级类别标题样式 */ <LI> font-weight:bold; /* 字体加粗 */ <LI> background-color:#A7ADFE; /* 背景色 */ <LI> color:white; /* 文字颜色 */ <LI> } <LI> .pmVerticalRightOut .level:hover .level_ a:hover { <LI> /* 定义二级类别链接显示样式 */ <LI> background-color:#F83658; /* 背景色 */ <LI> color:white; /* 文字颜色 */ <LI> } <LI> .pmVerticalRightOut .level:hover .level_ * { <LI> /* 定义所有二级类别通用属性 */ <LI> display:block; /* 以块显示 */ <LI> color:black; /* 文字颜色 */ <LI> padding:0px 2px; /* 内补丁间隔 */ <LI> }<LI> /* ------------------- Opera、Firefox の CSS ポップアップ メニューを終了 ---------------- -- --*/ <LI> <LI> /* ------------------- IE の CSS ポップアップ メニューを開始 ------------------ - */ <LI> .levelIe{ /* 第 1 レベルのカテゴリ属性を定義します */ <LI> width:120px; /* 幅 */ <LI> 高さ:17; /* 高さ */ <LI> Position:relative; /* 表示位置は相対位置です */ <LI> display:block; /* ブロックモードで表示 */ <LI> 背景色:#D8D8D8; /* 背景色 */ <LI>padding:0px 2px; /* テキスト内のパッチ間隔 */ <LI> margin:0px 0px 1px 0px; /* メニュー外のパッチ間隔 */ <LI> } <LI> .levelIe .level_ { /* マウスが上に移動すると、二次カテゴリの表示をトリガーします */ <LI> display:block; /* ブロック単位で表示 */ <LI> left:124px; /* 第 1 レベルのカテゴリを基準にして表示される位置 */ <LI> width:120px; /* 幅 */ <LI> height:auto; /* 高さ */ <LI> top:0px; /* 第 1 レベルのカテゴリの先頭を基準とした値 */ <LI> 背景色:#EFEFEF; /* 背景色を定義します */ <LI> Position:absolute; /* 位置は絶対位置です */ <LI> } <LI> .levelIe .level_ .level_title { <LI> /* 二次カテゴリのタイトル スタイルを定義します */ <LI> font-weight:bold; /* フォントを太字にします */ <LI> 背景色:#A7ADFE; /* 背景色 */ <LI> color:white; /* テキストの色 */ <LI> }<LI> .levelIe .level_ a:hover { <LI> /* 二次カテゴリのリンクの表示スタイルを定義します */ <LI> 背景色:#F83658; /* 背景色 */ <LI> color:white; /* テキストの色 */ <LI> } <LI> .levelIe .level_ * { <LI> /* すべての第 2 レベルのカテゴリの共通属性を定義します */ <LI> display:block; /* ブロック単位で表示 */ <LI> color:black; /* テキストの色 */ <LI>padding:0px 2px; /* 内側のパッチ間隔 */ <LI> } <LI> /* ------------------- IE の CSS ポップアップ メニューを終了する ------------------ - */ <LI>/*]]>*/ </li> <li></style> </li> <li><script type="text/javascript"> </li> <li>//<![CDATA[ <LI>if (navigator.appName=="Microsoft Internet Explorer") { <LI> 関数 fPmVerticalRightOut() { <LI> var getItem = document.getElementById("pmVerticalRightOut").getElementsByTagName("div"); <LI> for (var i=0; i<getItem.length; i ) { <LI> getItem[i].onmouseover=function() { <LI> if( this.className=="レベル"){ <LI> This.className="レベルIe"; <LI> } <LI> } <LI> getItem[i].onmouseout=function() { <LI> if( this.className=="levelIe"){ <LI> This.className="レベル"; <LI> } <LI> }//css ポップアップ メニュー スクリプト by shawl.qiu <LI> } <LI> } <LI> window.onload=fPmVerticalRightOut; <LI>}<LI>//]]> </li> <li></script> </li> <li></head> </li> <li><body> </li> <li><p/><p/><p/><p/><p/> </li> <li><div class="pmVerticalRightOut" id="pmVerticalRightOut"> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level&id=1">level_ title 1</a> </li> <li> <a href="?cat=level&id=2">level_ title 2</a> </li> <li> <a href="?cat=level&id=3">level_ title 3</a> </li> <li> <a href="?cat=level&id=4">level_ title 4</a> </li> <li> <a href="?cat=level&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 1</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_1&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_1&id=2">level_ title 2</a> </li> <li> <a href="?cat=level_1&id=3">level_ title 3</a> </li> <li><a href="?cat=level_1&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_1&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 2</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_2&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_2&id=2">level_ title 2</a> </li> <li> <a href="?cat=level_2&id=3">level_ title 3</a> </li> <li> <a href="?cat=level_2&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_2&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 3</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_3&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_3&id=2">level_ title 2</a> </li> <li><a href="?cat=level_3&id=3">level_ title 3</a> </li> <li> <a href="?cat=level_3&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_3&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 4</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_4&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_4&id=2">level_ title 2</a> </li> <li> <a href="?cat=level_4&id=3">level_ title 3</a> </li> <li> <a href="?cat=level_4&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_4&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li></div> </li> <li></body> </li> <li></html> </li> </ol> <br>2.编写横排底部弹出的 CSS 菜单。 <br><br>2.1 真正ベース Opera, Firefox 纯 CSS 弹出菜单<br><ol class="linenum"> <strong>行番号</strong> <li><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" <LI>" <A href="http://www.w3.org/TR/html4/loose.dtd" target=_blank>http://www.w3.org/TR/html4/loose.dtd</A>"> </li> <li><html> </li> <li><head> </li> <li><meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </li> <li><title>無題のドキュメント</title> </li> <li><style type="text/css"> </li> <li>/*<![CDATA[*/ /* shawl.qiu 純粋な CSS ポップアップ メニューのデモ */ <LI> body{ margin:0px auto; width:768px; /* 定義ページが中央に表示されます*/} <LI> *{text-decoration:none! important; /* 下線を表示しないようにすべてのリンクを定義します */} <LI> .pmhorizontalBottomOut{background-color:#fff! important; /* メイン メニュー フィールドの背景色を定義します */} <LI> .pmhorizontalBottomOut .level{ /* 第 1 レベルのカテゴリ属性を定義します */ <LI> width:120px; /* 幅 */ <LI> 高さ:17; /* 高さ */ <LI> Position:relative; /* 表示位置は相対位置です */ <LI> display:block; /* ブロックモードで表示 */ <LI> 背景色:#D8D8D8; /* 背景色 */ <LI>padding:0px 2px; /* テキスト内のパッチ間隔 */ <LI> margin:0px 1px 0px 0px; /* メニュー外のパッチ間隔 */ <LI> 浮動小数点:左; <LI> } <LI> .pmhorizontalBottomOut .level:hover { /* マウスが第 1 レベルのメニュー上に移動したとき */ <LI> 背景色:#6633FF; /* 背景色 */ <LI> color:#FFFFFF; /* テキストの色 */ <LI> } <LI> .pmhorizontalBottomOut .level_{display:none; /* 第 2 レベルのカテゴリはデフォルトで非表示になります */}<LI> <LI> .pmhorizontalBottomOut .level:hover .level_ { /* マウスがその上に移動すると、2 番目のカテゴリの表示をトリガーします */ <LI> display:block; /* ブロック単位で表示 */ <LI> width:124px; /* 幅 */ <LI> height:auto; /* 高さ */ <LI> margin:0px -2px 0px -2px; /* 外部パッチ */ <LI> 背景色:#EFEFEF; /* 背景色を定義します */ <LI> Position:absolute; /* 位置は絶対位置です */ <LI> } <LI> .pm水平底アウト .level:hover .level_ .level_title { <LI> /* 二次カテゴリのタイトル スタイルを定義します */ <LI> font-weight:bold; /* フォントを太字にします */ <LI> 背景色:#A7ADFE; /* 背景色 */ <LI> color:white; /* テキストの色 */ <LI> } <LI> .pm水平底アウト .level:hover .level_ a:hover { <LI> /* 二次カテゴリのリンクの表示スタイルを定義します */ <LI> 背景色:#F83658; /* 背景色 */ <LI> color:white; /* テキストの色 */ <LI> } <LI> .pm水平底アウト .level_ * { <LI> /* すべての第 2 レベルのカテゴリの共通属性を定義します */ <LI> display:block; /* ブロック単位で表示 */ <LI> color:black; /* テキストの色 */ <LI>padding:0px 2px; /* 内側のパッチ間隔 */ <LI> }<LI>/*]]>*/ </li> <li></style> </li> <li></head> </li> <li><body> </li> <li><p/><p/><p/><p/><p/> </li> <li><div class="pmhorizontalBottomOut" id="pmhorizontalBottomOut"> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level&id=1">level_ title 1</a> </li> <li> <a href="?cat=level&id=2">level_ title 2</a> </li> <li> <a href="?cat=level&id=3">level_ title 3</a> </li> <li> <a href="?cat=level&id=4">level_ title 4</a> </li> <li> <a href="?cat=level&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 1</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_1&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_1&id=2">level_ title 2</a> </li> <li> <a href="?cat=level_1&id=3">level_ title 3</a> </li> <li><a href="?cat=level_1&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_1&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 2</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_2&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_2&id=2">level_ title 2</a> </li> <li> <a href="?cat=level_2&id=3">level_ title 3</a> </li> <li> <a href="?cat=level_2&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_2&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 3</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_3&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_3&id=2">level_ title 2</a> </li> <li><a href="?cat=level_3&id=3">level_ title 3</a> </li> <li> <a href="?cat=level_3&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_3&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 4</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_4&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_4&id=2">level_ title 2</a> </li> <li> <a href="?cat=level_4&id=3">level_ title 3</a> </li> <li> <a href="?cat=level_4&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_4&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li></div> </li> <li></body> </li> <li></html> </li> </ol> <br>2.2 兼容 IE, Opera, Firefox の CSS 弹出菜单(脚本实现)<br><ol class="linenum"> <strong>行番号</strong> <li><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" <LI>" <A href="http://www.w3.org/TR/html4/loose.dtd" target=_blank>http://www.w3.org/TR/html4/loose.dtd</A>"> </li> <li><html> </li> <li><head> </li> <li><meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </li> <li><title>無題のドキュメント</title> </li> <li><style type="text/css"> </li> <li>/*<![CDATA[*/ /* shawl.qiu 純粋な CSS ポップアップ メニューのデモ */ <LI> body{ margin:0px auto; width:768px; /* 定義ページが中央に表示されます*/} <LI> *{text-decoration:none! important; /* 下線を表示しないようにすべてのリンクを定義します */} <LI> /* ------------------- Opera、Firefox の CSS ポップアップ メニューを開始 ---------------- -- --*/ <LI> .pmhorizontalBottomOut{background-color:#fff! important; /* メイン メニュー フィールドの背景色を定義します */} <LI> .pmhorizontalBottomOut .level{ /* 第 1 レベルのカテゴリ属性を定義します */ <LI> width:120px; /* 幅 */ <LI> 高さ:17; /* 高さ */ <LI> Position:relative; /* 表示位置は相対位置です */ <LI> display:block; /* ブロックモードで表示 */ <LI> 背景色:#D8D8D8; /* 背景色 */ <LI>padding:0px 2px; /* テキスト内のパッチ間隔 */ <LI> margin:0px 1px 0px 0px; /* メニュー外のパッチ間隔 */ <LI> 浮動小数点:左; <LI> } <LI> .pmhorizontalBottomOut .level:hover { /* マウスが第 1 レベルのメニュー上に移動したとき */ <LI> 背景色:#6633FF; /* 背景色 */ <LI> color:#FFFFFF; /* テキストの色 */ <LI> } <LI> .pmhorizontalBottomOut .level_{display:none; /* 第 2 レベルのカテゴリはデフォルトで非表示になります */}<LI> <LI> .pmhorizontalBottomOut .level:hover .level_ { /* マウスがその上に移動すると、2 番目のカテゴリの表示をトリガーします */ <LI> display:block; /* ブロック単位で表示 */ <LI> width:124px; /* 幅 */ <LI> height:auto; /* 高さ */ <LI> margin:0px -2px 0px -2px; /* 外部パッチ */ <LI> 背景色:#EFEFEF; /* 背景色を定義します */ <LI> Position:absolute; /* 位置は絶対位置です */ <LI> } <LI> .pm水平底アウト .level:hover .level_ .level_title { <LI> /* 二次カテゴリのタイトル スタイルを定義します */ <LI> font-weight:bold; /* フォントを太字にします */ <LI> 背景色:#A7ADFE; /* 背景色 */ <LI> color:white; /* テキストの色 */ <LI> } <LI> .pm水平底アウト .level:hover .level_ a:hover { <LI> /* 二次カテゴリのリンクの表示スタイルを定義します */ <LI> 背景色:#F83658; /* 背景色 */ <LI> color:white; /* テキストの色 */ <LI> } <LI> .pm水平底アウト .level_ * { <LI> /* すべての第 2 レベルのカテゴリの共通属性を定義します */ <LI> display:block; /* ブロック単位で表示 */ <LI> color:black; /* テキストの色 */ <LI>padding:0px 2px; /* 内側のパッチ間隔 */ <LI> }<LI> /* ------------------- Opera、Firefox の CSS ポップアップ メニューを終了 ---------------- -- --*/ <LI> <LI> /* ------------------- IE の CSS ポップアップ メニューを開始 ------------------ - */ <LI> .levelIe{ /* 第 1 レベルのカテゴリ属性を定義します */ <LI> width:120px; /* 幅 */ <LI> 高さ:17; /* 高さ */ <LI> Position:relative; /* 表示位置は相対位置です */ <LI> display:block; /* ブロックモードで表示 */ <LI> 背景色:#D8D8D8; /* 背景色 */ <LI>padding:0px 2px; /* テキスト内のパッチ間隔 */ <LI> margin:0px 1px 0px 0px; /* メニュー外のパッチ間隔 */ <LI> 浮動小数点:左; <LI> } <LI> .levelIe { /* マウスが第 1 レベルのメニュー上に移動したとき */ <LI> 背景色:#6633FF; /* 背景色 */ <LI> color:#FFFFFF; /* テキストの色 */ <LI> } <LI> .levelIe .level_ { /* マウスが上に移動すると、二次カテゴリの表示をトリガーします */ <LI> display:block; /* ブロック単位で表示 */ <LI> width:124px; /* 幅 */ <LI> height:auto; /* 高さ */ <LI> margin:0px -2px 0px -2px; /* 外部パッチ */ <LI> 背景色:#EFEFEF; /* 背景色を定義します */ <LI> Position:absolute; /* 位置は絶対位置です */ <LI> } <LI> .levelIe .level_ .level_title { <LI> /* 二次カテゴリのタイトル スタイルを定義します */ <LI> font-weight:bold; /* フォントを太字にします */ <LI> 背景色:#A7ADFE; /* 背景色 */ <LI> color:white; /* テキストの色 */ <LI> }<LI> .levelIe .level_ a:hover { <LI> /* 二次カテゴリのリンクの表示スタイルを定義します */ <LI> 背景色:#F83658; /* 背景色 */ <LI> color:white; /* テキストの色 */ <LI> } <LI> .levelIe .level_ * { <LI> /* すべての第 2 レベルのカテゴリの共通属性を定義します */ <LI> display:block; /* ブロック単位で表示 */ <LI> color:black; /* テキストの色 */ <LI>padding:0px 2px; /* 内側のパッチ間隔 */ <LI> } <LI> /* ------------------- IE の CSS ポップアップ メニューを終了する ------------------ - */ <LI>/*]]>*/ </li> <li></style> </li> <li><script type="text/javascript"> </li> <li>//<![CDATA[ <LI>if (navigator.appName=="Microsoft Internet Explorer") { <LI> 関数 fPmhorizontalBottomOut() { <LI> var getItem = document.getElementById("pmhorizontalBottomOut").getElementsByTagName("div"); <LI> for (var i=0; i<getItem.length; i ) { <LI> getItem[i].onmouseover=function() { <LI> if( this.className=="レベル"){ <LI> This.className="レベルIe"; <LI> } <LI> } <LI> getItem[i].onmouseout=function() { <LI> if( this.className=="levelIe"){ <LI> This.className="レベル"; <LI> } <LI> }//css ポップアップ メニュー スクリプト by shawl.qiu <LI> } <LI> } <LI> window.onload=fPmhorizontalBottomOut; <LI>}<LI>//]]> </li> <li></script> </li> <li></head> </li> <li><body> </li> <li><p/><p/><p/><p/><p/> </li> <li><div class="pmhorizontalBottomOut" id="pmhorizontalBottomOut"> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level&id=1">level_ title 1</a> </li> <li> <a href="?cat=level&id=2">level_ title 2</a> </li> <li> <a href="?cat=level&id=3">level_ title 3</a> </li> <li> <a href="?cat=level&id=4">level_ title 4</a> </li> <li> <a href="?cat=level&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 1</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_1&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_1&id=2">level_ title 2</a> </li> <li> <a href="?cat=level_1&id=3">level_ title 3</a> </li> <li><a href="?cat=level_1&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_1&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 2</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_2&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_2&id=2">level_ title 2</a> </li> <li> <a href="?cat=level_2&id=3">level_ title 3</a> </li> <li> <a href="?cat=level_2&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_2&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 3</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_3&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_3&id=2">level_ title 2</a> </li> <li><a href="?cat=level_3&id=3">level_ title 3</a> </li> <li> <a href="?cat=level_3&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_3&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li> <div class="レベル"> </li> <li> <div class="levelTitle">level 4</div> </li> <li> <div class="level_"> </li> <li> <div class="level_title">level_ title</div> </li> <li> <a href="?cat=level_4&id=1">level_ title 1</a> </li> <li> <a href="?cat=level_4&id=2">level_ title 2</a> </li> <li> <a href="?cat=level_4&id=3">level_ title 3</a> </li> <li> <a href="?cat=level_4&id=4">level_ title 4</a> </li> <li> <a href="?cat=level_4&id=5">level_ title 5</a> </li> <li> </div> </li> <li> </div> </li> <li></div> </li> <li></body> </li> <li></html> </li> </ol> <br><br>3.例 <br> 上記の例が表示されます。 結果的に、使用可能な CSS 出力菜の例が書き出されている場合、他の場所にある CSS 出力菜の例を書き出す必要がある場合、 ただ小さな修正一下で OK です。 <br><br>4.预览<br><br>4.1 1.2 互換性 IE, Opera, Firefox の CSS 弹出菜单(脚本实现) の预览<br> <dl> <dd> <style type="text/css"> /*<![CDATA[*/ /* shawl.qiu 純粋な CSS ポップアップ メニューのデモ */ ボディ{マージン:0px自動;幅:768ピクセル; /* 定义页面居中显示,*/} *{テキスト装飾:なし!重要; /* すべての接続不表示の下划線を定義 */}/* ------------------- Opera、Firefox の CSS ポップアップ メニューを開始 ------------------- * / .pmVerticalRightOut{background-color:#fff! important; /* メイン メニュー フィールドの背景色を定義します */} .pmVerticalRightOut .level{ /* 第 1 レベルのカテゴリ属性を定義します */ width:120px; /* 幅 */ 高さ:17; /* 高さ */ Position:relative; /* 表示位置は相対位置です */ display:block; /* ブロックモードで表示 */ 背景色:#D8D8D8; /* 背景色 */ padding:0px 2px; /* テキスト内のパッチ間隔 */ margin:0px 0px 1px 0px; /* メニュー外のパッチ間隔 */ } .pmVerticalRightOut .level:hover { /* マウスが第 1 レベルのメニュー上に移動したとき */ 背景色:#6633FF; /* 背景色 */ color:#FFFFFF; /* テキストの色 */ } .pmVerticalRightOut .level_{display:none; /* 第 2 レベルのカテゴリはデフォルトで非表示になります */} .pmVerticalRightOut .level:hover .level_ { /* マウスが上に移動したときに 2 番目のカテゴリの表示をトリガーします */ display:block; /* ブロック単位で表示 */ left:124px; /* 第 1 レベルのカテゴリを基準にして表示される位置 */ width:120px; /* 幅 */ height:auto; /* 高さ */ top:0px; /* 第 1 レベルのカテゴリの先頭を基準とした相対位置 */ background-color:#EFEFEF; /* 背景色を定義します */ Position:absolute; /* 位置は絶対位置です */ } .pmVerticalRightOut .level:hover .level_ .level_title { /* 二次カテゴリのタイトル スタイルを定義します */ font-weight:bold; /* 太字フォント */ 背景色:#A7ADFE; /* 背景色 */ color:white; /* テキストの色 */ } .pmVerticalRightOut .level:hover .level_ a:hover { /* 二次カテゴリのリンク表示スタイルを定義します */ 背景色:#F83658; /* 背景色 */ color:white; /* テキストの色 */ } .pmVerticalRightOut .level:hover .level_ * { /* すべての二次カテゴリに共通の属性を定義します */ display:block; /* ブロック単位で表示 */ color:black; /* テキストの色 */ padding:0px 2px; /* 内側のパッチ間隔 */ } /* ------------------- Opera、Firefox の CSS ポップアップ メニューを終了 ------------------- * / /* ------------------- IE の CSS ポップアップ メニューを開始 -------------------*/ .levelIe{ /* 第 1 レベルのカテゴリ属性を定義します */ width:120px; /* 幅 */ 高さ:17; /* 高さ */ Position:relative; /* 表示位置は相対位置です */ display:block; /* ブロックモードで表示 */ 背景色:#D8D8D8; /* 背景色 */ padding:0px 2px; /* テキスト内のパッチ間隔 */ margin:0px 0px 1px 0px; /* メニュー外のパッチ間隔 */ } .levelIe .level_ { /* マウスがその上に移動すると、第 2 レベルのカテゴリの表示をトリガーします */ display:block; /* ブロック単位で表示 */ left:124px; /* 第 1 レベルのカテゴリを基準にして表示される位置 */ width:120px; /* 幅 */ height:auto; /* 高さ */ top:0px; /* 第 1 レベルのカテゴリの先頭を基準とした相対位置 */ background-color:#EFEFEF; /* 背景色を定義します */ Position:absolute; /* 位置は絶対位置です */ } .levelIe .level_ .level_title { /* 二次カテゴリのタイトル スタイルを定義します */ font-weight:bold; /* 太字フォント */ 背景色:#A7ADFE; /* 背景色 */ color:white; /* テキストの色 */ }.levelIe .level_ a:hover { /* 二次カテゴリのリンク表示スタイルを定義します */ 背景色:#F83658; /* 背景色 */ color:white; /* テキストの色 */ } .levelIe .level_ * { /* すべての二次カテゴリに共通の属性を定義します */ display:block; /* ブロック単位で表示 */ color:black; /* テキストの色 */ padding:0px 2px; /* 内側のパッチ間隔 */ } /* ------------------- IE の CSS ポップアップ メニューを終了 -------------------*/ /*]]>*/</style> <script type="text/javascript"> //<![CDATA[ if (navigator.appName=="Microsoft Internet Explorer") { function fPmVerticalRightOut() { var getItem = document.getElementById("pmVerticalRightOut").getElementsByTagName("div"); for (var i=0; i<getItem.length; i ) { getItem[i].onmouseover=function() { if( this.className=="level"){ this.className="levelIe"; } } getItem[i].onmouseout=function() { if( this.className=="levelIe"){ this.className="level"; } }//css popup menu script by shawl.qiu } } function fPmHorizontalBottomOut() { var getItem = document.getElementById("pmHorizontalBottomOut").getElementsByTagName("div"); for (var i=0; i<getItem.length; i ) { getItem[i].onmouseover=function() { if( this.className=="level"){ this.className="levelIe"; } } getItem[i].onmouseout=function() { if( this.className=="levelIe"){ this.className="level"; } }//css popup menu script by shawl.qiu } } //window.onload=fPmHorizontalBottomOut; window.onload=fPmVerticalRightOut,fPmHorizontalBottomOut; } //]]> </script> </dd> </dl> </dd> </dl> </div>