利用HTML制作一二级导航菜单

可以说现在导航都是利用列表来制作的,废话少说,开始我们的二级导航制作
我们先从一级导航开始,我们在页面中建一个ul列表,id为nav。在前端css命名中导航可以说都是叫nav。接下来我们里面添加8个列表并设置超链接,我们把超链接的目标设置成空链接,代码如下:
好啦,现在我们在浏览器中预览看看

下面这段代码不理解自行度娘,不解释
body{
	margin:0px;
	padding:0px;
}

现在我们给一级导航nav设置一下属性,设置宽为800像素,高为45像素,居中显示,没有列表符号,设置padding为0;
#nav{
	width:800px;
	height:45px;
	margin:auto;
	list-style:none;
        padding:0;
}
接下来我们给一级导航栏目的列表设置属性,列表的宽度为100像素,左浮动,字体的行高为45像素(这样在导航中就垂直居中了);字体居中对齐,把li转换成块元素
#nav li{
	width:100px;
	float:left;
	line-height:45px;
	text-align:center;
	display:block;
}

最后我们给超链接设置css样式,因为超链接默认是有下划线,然后字体是蓝色的。现在我们把字体改成黑色,黑色的十六进制是#000000,去掉下划线
#nav li a {
	color:#000;
	text-decoration:none;
}
完整的代码如下:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>二级导航制作-qq_33587638</title>
<style>
body{
	margin:0px;
	padding:0px;
}
#nav{
	width:800px;
	height:45px;
	margin:auto;
	list-style:none;
	padding:0;
}
#nav li{
	width:100px;
	float:left;
	line-height:45px;
	text-align:center;
	display:block;
}
#nav li a {
	color:#000;
	text-decoration:none;
}
</style>
</head>

<body>
  <ul id="nav">
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
  </ul>
</body>
</html>


做到这里我们的一级导航就差不多了,我们浏览器预览下:



接下来我们给一级导航美化下,

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>二级导航制作-qq_33587638</title>
<style>
body{
	margin:0px;
	padding:0px;
}
#nav{
	width:800px;
	height:45px;
	margin:auto;
	list-style:none;
	background-image:url(images/nav.png);
	padding:0;
}
#nav li{
	width:100px;
	float:left;
	line-height:45px;
	text-align:center;
	display:block;
}
#nav li:hover{
	background-color:#1395FF;
}
#nav li a {
	color:#000;
	text-decoration:none;
}
</style>
</head>

<body>
  <ul id="nav">
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
  </ul>
</body>
</html>

好啦,现在开始我们二级导航的制作,二级导航我们也是用列表来制作
代码如下:
(注意,二级导航的代码要嵌套在一级导航里面)

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>二级导航制作-qq_33587638</title>
<style>
body{
	margin:0px;
	padding:0px;
}
#nav{
	width:800px;
	height:45px;
	margin:auto;
	list-style:none;
	background-image:url(images/nav.png);
	padding:0;
}
#nav li{
	width:100px;
	float:left;
	line-height:45px;
	text-align:center;
	display:block;
}
#nav li:hover{
	background-color:#1395FF;
}
#nav li a {
	color:#000;
	text-decoration:none;
}
</style>
</head>

<body>
  <ul id="nav">
    <!-- 要嵌套在一级导航的li里面,不能嵌套在超链接里面 -->
    <li><a href="#" >导航</a>
      <ul>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
      </ul>
    </li>
    <li><a href="#" >导航</a>
      <ul>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
      </ul>
    </li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
  </ul>
</body>
</html>


浏览器预览会有一点点的错位,设置padding就可以了

#nav li ul{
	padding:0;
}



下面我们美化下二级导航。具体我们就不讲了

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>二级导航制作-qq_33587638</title>
<style>
body{
	margin:0px;
	padding:0px;
}
#nav{
	width:800px;
	height:45px;
	margin:auto;
	list-style:none;
	background-image:url(images/nav.png);
	padding:0;
}
#nav li{
	width:100px;
	float:left;
	line-height:45px;
	text-align:center;
	display:block;
	position:relative;
}
#nav li:hover{
	background-color:#1395FF;
}
#nav li ul {
	position:absolute;
	width:100px;
	left:0px;
	top:45px;
	padding:0;
	border-bottom:1px solid #ccc;
}
#nav li ul li{
	width:98px;
	height:44px;
	border-left:1px solid #ccc;
	border-right:1px solid #ccc;
	border-top:1px solid #ccc;
}
#nav li a {
	color:#000;
	text-decoration:none;
}
</style>
</head>

<body>
  <ul id="nav">
    <li><a href="#" >导航</a>
      <ul>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
      </ul>
    </li>
    <li><a href="#" >导航</a>
      <ul>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
      </ul>
    </li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
  </ul>
</body>
</html>

定位:position
这次我们用到了两个属性:absolute(相对定位) relative(绝对定位)
position:absolute;
 left:0px;
 top:45px;

意思我们相对一级导航左边是0像素,上边是45像素。top=一级导航的高度



最后一点:鼠标滑过显示。
这个需要用到鼠标的hover

设置鼠标滑过一级导航的时候,下面的二级导航就显示,没有滑过二级导航就隐藏起来。

#nav li ul {
        display:none;<!--鼠标没有滑过就隐藏起来-->
}
#nav li:hover ul{
	display:block;<!--鼠标滑过就显示出来-->
}
好啦,我们的二级导航就制作完成了



附上完整的代码:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>二级导航制作-qq_33587638</title>
<style>
body{
	margin:0px;
	padding:0px;
}
#nav{
	width:800px;
	height:45px;
	margin:auto;
	list-style:none;
	background-image:url(images/nav.png);
	padding:0;
}
#nav li{
	width:100px;
	float:left;
	line-height:45px;
	text-align:center;
	display:block;
	position:relative;
}
#nav li:hover{
	background-color:#1395FF;
}
#nav li ul {
	position:absolute;
	width:100px;
	left:0px;
	top:45px;
	padding:0;
	border-bottom:1px solid #ccc;
	display:none;
}
#nav li:hover ul{
	display:block;
}
#nav li ul li{
	width:98px;
	height:44px;
	border-left:1px solid #ccc;
	border-right:1px solid #ccc;
	border-top:1px solid #ccc;
}
#nav li a {
	color:#000;
	text-decoration:none;
}
</style>
</head>

<body>
  <ul id="nav">
    <li><a href="#" >导航</a>
      <ul>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
      </ul>
    </li>
    <li><a href="#" >导航</a>
      <ul>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
        <li><a href="#" >二级导航</a></li>
      </ul>
    </li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
    <li><a href="#" >导航</a></li>
  </ul>
</body>
</html>












  • 10
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要把图片当作导航栏,可以使用HTML中的`<img>`标签,并使用CSS设置其样式,比如设置宽高、边框等。然后将图片放置在导航栏的位置即可。 以下是CSS利用一张背景图制作导航菜单的实现思路及代码: 1. 首先,需要一个包含导航菜单HTML结构,比如一个无序列表。每个导航菜单项可以用`<li>`标签表示。 2. 然后,使用CSS设置导航菜单的样式,包括宽度、高度、背景颜色等。这里需要注意的是,不要设置导航菜单项的背景颜色。 3. 接着,在CSS中设置背景图,并设置其重复方式为水平平铺。这里的背景图就是导航菜单项的背景图。 4. 最后,设置每个导航菜单项的样式,包括字体颜色、大小、对齐方式等。同时,设置每个导航菜单项的左、右边距为背景图的宽度,使其能够覆盖背景图。 下面是代码示例: HTML: ``` <ul class="nav-menu"> <li><a href="#">Home</a></li> <li><a href="#">About</a></li> <li><a href="#">Services</a></li> <li><a href="#">Contact</a></li> </ul> ``` CSS: ``` .nav-menu { width: 800px; height: 50px; background-color: #333; background-image: url(nav-bg.png); background-repeat: repeat-x; list-style: none; margin: 0; padding: 0; } .nav-menu li { float: left; margin: 0 20px; } .nav-menu li a { display: block; color: #fff; font-size: 16px; line-height: 50px; text-align: center; text-decoration: none; width: 100%; height: 100%; padding: 0 20px; } .nav-menu li a:hover { background-color: #666; } ``` 在上面的代码中,`nav-bg.png`是背景图的文件名,可以替换成其他文件名。通过设置`background-repeat: repeat-x;`,可以让背景图在水平方向上平铺。同时,通过设置每个导航菜单项的左、右边距为`20px`,可以使其覆盖背景图。最后,当鼠标悬停在导航菜单项上时,可以显示出不同的背景色。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值