纯CSS制作二级导航

原文:纯CSS制作二级导航

一.问题描述

  做一个类似校园网首页,主要是导航栏的设置,ul默认纵向排列,如何横向排列,同时去掉圆点。

二.问题解决

2.1 先写导航条

  用两个ul嵌套,一个ul是横向导航条,另一个是每个小项目下连一个竖向的ul。

 1 <ul id="nav_ul">
 2             <li>
 3                 <a href="#">首页</a>
 4                 <ul class="nav_ul_ul">
 5                     <li>电信</li>
 6                     <li>联通</li>
 7                     <li>移动</li>
 8                 </ul>
 9             </li>
10 </ul>

2.2 html乱码

  原来没加charset,后来百度了需要加上gb2312,依然乱码,改成utf-8就ok了。

1 <meta charset="UTF-8">

2.3 去掉小圆点

<style type="text/css">
            #navigator ul
            {
                list-style:none;
            }

</style>

2.4 ul横向排列

  left就是1234,right就是4321。不过我发现并没有这么简单。

1 #navigator li
2             {
3                 float:left;
4             }

  不过由于,div是用的id,二级ul也变成横向了。

  查了资料我感觉可以这样写,果然对了。

1 #navigator ul li
2             {
3                 float:left;
4             }
5             #navigator ul li ul li
6             {
7                 float:none;

三.细节处理

3.1 鼠标滑过才弹出二级列表

  首先定义嵌套的ul不显示,当鼠标划过li的时候下面的ul显示出来。

  IE不显示效果,用搜狗可以。

1 #navigator ul li ul
2             {
3                 display:none;
4             }
5             #navigator ul li:hover ul
6             {
7                 display:block;
8             }

3.2 二级ul未和一级对齐

  但是我们发现显示出来的二级栏目不是我们想要的位置,那么对它进行绝对定位,因为绝对定位的元素的位置相对于最近的已定位祖先元素。所以它外面的li设置一个相对定位。

 1 #navigator ul li
 2             {
 3                 float:left;
 4                 position:relative;
 5             }
 6             <!--hover 不是hovor -->
 7             #navigator ul li:hover ul
 8             {
 9                 display:block;
10                 position:absolute;
11                 left:0px;
12                 top:21px;
13             }

  但是二级里面的字体显示也变了,变成了,竖向。

 1 <html>
 2     <head>
 3         <meta charset="UTF-8">
 4         <title>首页
 5         </title>
 6         <!--别写成css/text -->
 7         <style type="text/css">
 8             #navigator ul
 9             {
10                 list-style:none;
11             }
12             #navigator ul li ul
13             {
14                 display:none;
15             }
16             #navigator ul li
17             {
18                 float:left;
19                 position:relative;
20             }
21             <!--hover 不是hovor -->
22             #navigator ul li:hover ul
23             {
24                 display:block;
25                 position:absolute;
26                 left:0px;
27                 top:21px;
28             }
29             #navigator ul li ul li
30             {
31             <!-- 消除父元素浮动影响-->
32                 float:none;
33             }
34             .nav_ul_ul li
35             {
36             }
37             #navigator
38             {
39
40             }
41         </style>
42     </head>
43     <body>
44
45     <div id = "navigator">
46         <ul id="nav_ul">
47             <li>
48                 <a href="#">首页</a>
49                 <ul class="nav_ul_ul">
50                     <li>电信</li>
51                     <li>联通</li>
52                     <li>移动</li>
53                 </ul>
54             </li>
55             <li>
56                 <a href="#">电信</a>
57                 <ul class="nav_ul_ul">
58                     <li>优惠1</li>
59                     <li>优惠2</li>
60                     <li>优惠3</li>
61                 </ul>
62             </li>
63             <li>
64                 <a href="#">移动</a>
65                 <ul class="nav_ul_ul">
66                     <li>电信</li>
67                     <li>联通</li>
68                     <li>移动</li>
69                 </ul>
70             </li>
71             <li>
72                 <a href="#">联通</a>
73                 <ul class="nav_ul_ul">
74                     <li>电信</li>
75                     <li>联通</li>
76                     <li>移动</li>
77                 </ul>
78             </li>
79         </ul>
80     </div>
81
82
83
84     </body>
85 </html>

  先不管了,这有个比较精美的。

  下载地址http://download.csdn.net/detail/huoxingshiyilang/8678959

时间: 2024-10-13 15:51:44

纯CSS制作二级导航的相关文章

纯CSS实现二级导航下拉菜单--css的简单应用

思想:使用css的display属性控制二级下拉菜单的显示与否.当鼠标移动到一级导航菜单的li标签时,显示二级导航菜单的ul标签.由于实现起来比较简单,所以在这里直接给出了参考代码. 1.纯CSS二级导航下拉菜单代码: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8" content="text/html" http

如何使用纯CSS制作特效导航条?

先上张图,如何使用纯 CSS 制作如下效果? 在继续阅读下文之前,你可以先缓一缓.尝试思考一下上面的效果或者动手尝试一下,不借助 JS ,能否巧妙的实现上述效果. OK,继续.这个效果是我在业务开发的过程中遇到的一个类似的小问题.其实即便让我借助 Javascript ,我的第一反应也是,感觉很麻烦啊.所以我一直在想,有没有可能只使用 CSS 完成这个效果呢? 定义需求 我们定义一下简单的规则,要求如下: <ul> <li>不可思议的CSS</li> <li>

纯css实现二级导航菜单效果,通过简单的鼠标事件操作页面元素样式变换实现二级导航菜单的功能,非常简单实用,

HTML代码如下 <!-- 头部导航栏开始--><div id="nav"><dl class="sy"><dt><a class="first" href="#" >首页</a></dt><dd class="line">|</dd><dd class="triangle"

纯css的二级导航栏

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>JS Bin</title> </head> <body> <div id="container"> <ul class="nav clearfix"> <li> <a href=#>首

DIV+CSS制作二级横向弹出菜单,略简单

没有使用JavaScript控制二级菜单的显示,结果如上图所示. 代码如下: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title>纯DIV+CSS制作二级横向弹出菜单</title> 6 <style type="text/css"> 7 .menu{ 8 font-family:arial,sa

CSS制作的导航菜单向上箭头

使用纯CSS技术制作导航菜单上的向上箭头图标,不使用图片,用CSS实现,挑战自己的CSS布局水平,最终效果自己满意,如果您对此感兴趣的话,就要好好研究一下CSS代码啦. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="h

如何使用纯 CSS 制作四子连珠游戏

序言:你有没有想过单纯使用 CSS 也可以制作一款游戏?甚至可以双人对决?这是一篇非常有趣的文章,作者详细讲解了使用纯 CSS 制作四子连珠游戏的思路以及使用奇淫巧技解决困难问题的方法.因为案例本身比较复杂,而本人水平有限,翻译必有不恰当之处,望指正. 原文:How the Roman Empire Made Pure CSS Connect 4 Possible 翻译:nzbin 实验是学习新技巧.思考新想法.并突破自身极限的有趣的方式."纯 CSS"演示很早就有了,但是随着浏览器和

淘宝分类导航条;纯css实现固定导航栏

效果如下: 页面如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <style type="t

CSS制作横向导航菜单实例代码

CSS制作横向导航菜单实例代码:横向导航菜单是div css布局中最为基础的且必须要掌握额技能,对于稍有布局经验的朋友这都不是问题,但是对于初学者可能未必如此,所以这里分享一段最为基础的布局代码,希望能够给需要的朋友带来帮助.代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="ht