`
fp_moon
  • 浏览: 981796 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

页面菜单制作(一二三级横纵向上弹下拉、左右)

CSS 
阅读更多

步骤:

第一步:建立一个无序列表

我们先建立一个无序列表,来建立菜单的结构。代码是:

<ul>
<li><a href="1">首页</a></li>
<li><a href="2">产品介绍</a></li>
<li><a href="3">服务介绍</a></li>
<li><a href="4">技术支持</a></li>
<li><a href="5">立刻购买</a></li>
<li><a href="6">联系我们</a></li>
</ul>

第二步:隐藏li的默认样式

因为看起来不是很好看,菜单通常都不需要li默认的圆点,我们给UL定义一个样式来消除这些圆点。

当然,为了更好的控制整个菜单,我们把菜单放在一个div里。页面代码变成:

<div class="test"> <ul>
<li><a href="1">首页</a></li>
<li><a href="2">产品介绍</a></li>
<li><a href="3">服务介绍</a></li>
<li><a href="4">技术支持</a></li>
<li><a href="5">立刻购买</a></li>
<li><a href="6">联系我们</a></li>
</ul> </div>

CSS定义为:

.test ul{list-style:none;}

说明:“.test ul”表示我要定义的样式将作用在test的层里的ul标签上。

现在的效果是没有圆点了:

第三步:关键的浮动

这里是菜单变成横向的关键,我们给li元素加上一个“float:left;”属性,让每个li浮动在前面一个li的左面。

CSS定义为:

.test li{float:left;}

菜单变横向了。就这么简单!下面需要做的就是优化细节了。

第四步:调整宽度

菜单都挤在一起不好看怎么办?我们来调节li的宽度。

CSS中添加定义width:100px指定一个li的宽度是100px,当然你可以根据你的需要调整数值:

.test li{float:left;width:100px;}

如果我们同时定义外面div的宽度,li就会根据div的宽度自动换行,例如定义了div350px6li的总宽度是600px,一行排不下就自动变成两行:

.test{width:350px;}

第五步:设置基本链接效果

接下来,我们通过CSS来设置链接的样式,分别定义:link:visited:hover的状态

.test a:link{color:#666;background:#CCC;text-decoration:none;}
.test a:visited{color:#666;text-decoration:underline;}
.test a:hover{color:#FFF; font-weight:bold;text-decoration:underline;background:#F00;}

第六步:将链接以块级元素显示

有朋友问,菜单链接的背景色为什么没有填满整个li的宽度?恩,解决的方法很简单,在a的样式定义中增加display:block,使链接以块级元素显示。

同时我们微调了如下细节:

  • text-align:center将菜单文字居中;
  • height:30px增加背景的高度;
  • margin-left:3px使每个菜单之间空3px距离;
  • line-height:30px;定义行高,使链接文字纵向居中;

CSS定义象这样:

.test a{display:blocktext-align:center;height:30px;}
.test li{float:left;width:100px;background:#CCC;margin-left:3px;line-height:30px;}

这样就漂亮多了吧。

第七步:定义背景图片

我们通常都会在每个链接前加一个小图标,这样导航更清楚。CSS是采用定义li的背景图片来实现的:

.test a:link{color:#666;background:url(arrow_off.gif) #CCC no-repeat 5px 12px;text-decoration:none;}
.test a:hover{color:#FFF; font-weight:bold;text-decoration:none;background:url(arrow_on.gif) #F00 no-repeat 5px 12px;}

说明:“background:url(arrow_off.gif) #CCC no-repeat 5px 12px;”这句代码是一个CSS缩写,表示背景图片是arrow_off.gif;背景颜色是#CCC;背景图片不重复"no-repeat",背景图片的位置是左边距5px、上边距12px

默认状态下,图标为arrow.off.gif,当鼠标移动到链接上,图标变为arrow_on.gif

现在css的完整代码是:

.test ul{list-style:none;}
.test li{float:left;width:100px;background:#CCC;margin-left:3px;line-height:30px;}
.test a{display:block;text-align:center;height:30px;}
.test a:link{color:#666;background:url(arrow_off.gif) #CCC no-repeat 5px 12px;text-decoration:none;}
.test a:visited{color:#666;text-decoration:underline;}
.test a:hover{color:#FFF; font-weight:bold;text-decoration:none;background:url(arrow_on.gif) #F00 no-repeat 5px 12px;}

页面的完整代码是:

<div class="test">
<ul>
<li><a href="1">首页</a></li>
<li><a href="2">产品介绍</a></li>
<li><a href="3">服务介绍</a></li>
<li><a href="4">技术支持</a></li>
<li><a href="5">立刻购买</a></li>
<li><a href="6">联系我们</a></li>
</ul>
</div>

主要步骤就是这7步用CSS做横向菜单!

 p,div,h{display:inline;} /********去除li之间的纵向间距,也就是li中的块元素会引起li之间产生间距********/

分享到:
评论

相关推荐

    Access数据库-二级下拉菜单制作

    Access数据库-二级下拉菜单制作

    JQ导航弹性下拉菜单

    **JQ导航弹性下拉菜单**是前端开发中常见的交互元素,主要应用于网站导航,提供清晰的层次结构,便于用户快速浏览和访问不同页面。它结合了jQuery库的强大功能,实现了菜单项的动态显示和隐藏,增加了用户体验的流畅...

    wincc 下拉菜单制作

    ### Wincc下拉菜单制作详解 #### 一、前言 在工业自动化领域,WinCC (Windows Control Center) 是一款非常流行的组态软件,广泛应用于各种监控与数据采集(SCADA)系统。本文将详细介绍如何在WinCC环境中创建下拉...

    VBA设置多级下拉菜单.xlsm

    VBA设置多级下拉菜单.xlsm VBA设置动态多级下拉菜单.xlsm

    纯html+css制作三级下拉菜单

    每个一级菜单项内有一个`&lt;a&gt;`标签用于链接,并有一个`&lt;span&gt;`标签显示下拉指示符(例如"▼")。 当鼠标悬停在一级菜单项上时,对应的二级菜单会显示出来。这通过CSS的`:hover`选择器来实现。例如,当鼠标悬停在`...

    下拉菜单集合(二级、三级下拉菜单)

    在本资源包“下拉菜单集合”中,包含了多种类型的下拉菜单,包括二级和三级下拉菜单,这些设计通常用于导航栏、设置选项或用户界面的其他部分,以节省屏幕空间并提升用户体验。 一、下拉菜单的基本结构与原理 下拉...

    二级,三级下拉列表菜单

    在"中国 四川 成都"的例子中,它模拟了选择地址的过程,用户首先从一级菜单“中国”中选择,然后在二级菜单“四川”中继续选择,最终在三级菜单“成都”中确定具体位置。 实现三级下拉列表菜单的技术方案通常涉及...

    Jquery + Css 实现横纵菜单下拉效果

    本篇文章将深入探讨如何使用JavaScript库jQuery和CSS技术来实现横纵菜单的下拉效果。以下是对这个主题的详细解释: 一、jQuery简介 jQuery是一个轻量级的JavaScript库,它简化了HTML文档遍历、事件处理、动画制作和...

    jquery弹性下拉图标菜单.rar

    本资源“jquery弹性下拉图标菜单.rar”显然关注的是利用jQuery来创建具有弹性和动态效果的下拉图标菜单。这样的菜单在现代网页设计中非常常见,尤其适用于导航栏,因为它能够有效地组织大量链接,同时保持界面的整洁...

    jQuery制作垂直二级下拉栏目导航菜单特效

    要实现垂直二级下拉菜单,我们需要对`&lt;ul&gt;`和`&lt;li&gt;`应用一些关键样式,比如设置`position`属性为`relative`或`absolute`来控制元素的位置,以及使用`display:none`隐藏二级菜单,然后在jQuery事件中显示它们。...

    网站下拉菜单制作企业网站导航菜单代码.rar

    网站下拉菜单制作企业网站导航菜单代码.rar 网站下拉菜单制作企业网站导航菜单代码.rar 网站下拉菜单制作企业网站导航菜单代码.rar 网站下拉菜单制作企业网站导航菜单代码.rar 网站下拉菜单制作企业网站导航菜单代码...

    JS 二级下拉菜单。很漂亮,就是没实现三级下拉

    扩展到三级下拉菜单,我们需要在二级菜单项内再嵌套一个`&lt;ul&gt;`,并重复上述过程,但要注意以下几点: - 需要分别处理不同级别的鼠标悬停事件,以避免二级和三级菜单的显示互相干扰。 - 可以使用CSS的`position`属性...

    jquery省市区三级联动下拉菜单_select三级联动下拉菜单

    jquery省市区三级联动下拉菜单_select三级联动下拉菜单 jquery省市区三级联动下拉菜单_select三级联动下拉菜单 jquery省市区三级联动下拉菜单_select三级联动下拉菜单 jquery省市区三级联动下拉菜单_select三级联动...

    二级下拉菜单的简单做法

    一级下拉菜单通常用于显示主类别,而二级下拉菜单则展示与一级菜单相关的子类别。例如,一级菜单可能是“部门”,包含“销售部”、“市场部”等子菜单。这种结构使得用户能够快速选择并输入精确的信息,避免手动输入...

    HTML制作多级菜单_一级下拉菜单导航菜单+二三级选项卡tab-移动到菜单上就切换选项卡.zip

    当鼠标悬停在一级菜单项上时,通过CSS的`:hover`伪类改变子菜单的`display`状态,从而实现下拉效果。 JavaScript或jQuery可以增加更复杂的功能,比如动态交互和动画效果。在这个场景中,可能使用了事件监听器(如`...

    3级下拉菜单

    例如,当鼠标移到一级菜单上时,对应的二级菜单显示;移至二级菜单,三级菜单显示。这种方法简单且性能好,但对动态交互支持有限。 JavaScript(通常配合jQuery等库)则能提供更丰富的交互效果,比如动画过渡、异步...

    jquery树形导航菜单插件制作滑动多级二级下拉菜单展示

    本文将深入探讨如何使用jQuery来创建一个树形导航菜单,它具有滑动效果的多级二级下拉菜单功能,并且支持无限层级的嵌套。 首先,jQuery是一个轻量级的JavaScript库,它的API简洁易用,使得动态操作DOM(文档对象...

    EXCEL一二级下拉菜单制作PPT课件.pptx

    3. 输入公式“=省份”,其中“省份”是你之前设置的一级菜单的名称,它会根据一级菜单的选择来更新二级菜单的选项。 4. 接下来,为了引用一级菜单的选择,我们需要使用INDIRECT函数。假设一级菜单在F列,可以输入...

    用Dreamweaver制作下拉菜单

    DW以其直观的用户界面和代码编辑功能,让非编程背景的设计师也能轻松制作出专业的下拉菜单。 首先,打开Dreamweaver并创建一个新的HTML文件。在顶部的“文件”面板中,选择“新建”-&gt;“HTML”,这将创建一个空白的...

Global site tag (gtag.js) - Google Analytics