- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Dreamweaver8系列DIVCSS教程下拉及多级弹出菜单
下拉及多级弹出菜单
web标准(div+css)》的下拉及多级弹出菜单,包含以下内容和知识点:
带下拉子菜单的导航菜单
绝对定位和浮动的区别和运用
css自适应宽度滑动门菜单
一、带下拉子菜单的导航菜单
下拉菜单在一些企业网站应用尤为广泛,它存在使用方便,占用空间小等特点。之前纵向导航教程中已使用过二级导航,今天制作下横向导航菜单的二级菜单,方法和纵向一样,只不过由纵向改变为横向而已,下面我们以上一章第二节用图片美化的横向导航中的实例进行修改。
先在html代码增加二级菜单的代码:
div id=menuullia id=current href=#首页/a/lilia href=#网页版式/aullia href=#自适应宽度/a/lilia href=#固定宽度/a/li/ul/lilia href=#web教程/aullia href=#新手入门/a/lilia href=#视频教程/a/lilia href=#常见问题/a/li/ul/lilia href=#web实例/a/lilia href=#常用代码/a/li/ul/div
增加完代码后,在浏览器里预览一下:
是不是一看头都大了,怎么变成这样了。别懵,我们分析一下错乱的原因。首先我们看下“自适应宽度”和“固定宽度”两个二级菜单也继承了一级菜单的背景和横向排列,所以我们先把二级菜单的背景和浮动清除掉,增加以下css代码:
#menu ul li ul li { float:none;}#menu ul li ul li a { background:none;}
现在预览看下,二级菜单是不是已经归位了,但鼠标划过时还继承了一级菜单的样式,所以也改为最终效果上的黑色背景白色文字,还有下拉菜单的灰色边框和灰色背景也一并加上,修改并增加如下代码:
#menu ul li ul { border:1px solid #ccc;}#menu ul li ul li { float:none; width:85px; background:#eee; margin:0;}#menu ul li ul li a { background:none;}#menu ul li ul li a:hover { background:#333; color:#fff;}
第一行设置二级菜单的灰色边框;为了美观,我们把下拉菜单的宽度设置成和一级菜单宽度相同,第二行的width:85px再加上第一行上设置的边框左右各1px后正好是87px,和一级菜单宽度相同。margin:0是为了清除掉继承一级菜单中margin-left:2px;最后一行设置鼠标划过时的样式。
再预览一下,是不是基本的样式已实现了。
下一步就该把二级菜单隐藏,当鼠标划过时显示出来了。增加如下代码:
#menu ul li ul { display:none; border:1px solid #ccc;}#menu ul li:hover ul { display:block;}
注意第二行的写法,#menu ul li:hover ul这个样比较难理解,它的意思是定义当鼠标划过#menu下ul下li时,li下的ul的样式(有点饶舌),这里设置为display:block,意思是鼠标划过时显示这块内容。开始隐藏,鼠标划过时显示, 这就实现了我们想要的效果。目前IE6只支持a的伪类,其它标签的伪类不支持,所以要想在IE6下也显示正确,需要借助js来实现。我们定义一个类.sfhover(自己命名,需和JS中相同)的属性为display:block;然后当鼠标划过后,用JS给当前li添加上这个样式上,根据css的优先级:指定的高于继承的原则,就实现了IE6下的正确显示。所以增加如下代码:
#menu ul li.sfhover ul { display:block;}?
认真跟着教程制作的朋友可能已经发现,现在应用的JS和纵向导航时应用的不样,但最终实现的效果是一样的。同理css在布局网站时,也是可以多种方法的,正所谓条条大道通罗马,希望大家举一反三,加深前面教程的掌握。JS部分本例不做讲解,如果你想弄清楚JS是如何实现的,请学习js相关内容。到这里,本例就基本完成了,还有一个问题是当前导航下有内容的话,如果二级菜单显示,将会把下边的内容挤跑,所以需要给#menu ul li ul增加position:absolute;属性,当其绝对定位后,它将脱离原来文档流,不再占据空间,因此也不会再把下边内容挤跑了(欲更多了解绝对定位,请查看之前教程或/div_css/899.shtml)。完整的预览代码如下:?
!DOCTYPE html PUBLIC -//W3C//DTD XHTML
您可能关注的文档
最近下载
- 征地拆迁工作总结.pptx VIP
- 二级公立医院绩效考核各指标最新的评分标准.pdf
- 辽宁省沈阳市和平区2023-2024学年五年级下学期期末数学试题.docx VIP
- 2025-2026年部编版五年级语文下册期末试卷及答案【完整】 .pdf VIP
- 艾克幕ICOM-IC-9700_维修说明书手册.pdf
- 湖南省普通高等学校招生体育类专业统一考试评分标准和考试细则(2023年版).pdf VIP
- 医院药品破损处理管理制度.docx VIP
- 钱江贝纳利前后减震加油量列表.xls VIP
- 7.1 血液 课件 2024-2025学年北师版生物七年级下册.pptx VIP
- 曲臂车培训课件.pptx VIP
文档评论(0)