纯css下拉菜单详解

纯css下拉菜单详解一级菜单二级菜单二级菜单二级菜单一级菜单二级菜单二级菜单二级菜单下拉菜单由于实用,所以受到人们的欢迎。下拉菜单通常是由javascript来实现的,也应该由javascript来实现,因为这属于行为层范围。然而大家知道,使用CSS的

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

<!--[if lte IE 6]><a href="#"><![endif]-->
<dl>
        <dt>一级菜单</dt>
        <dd>二级菜单</dd>
        <dd>二级菜单</dd>
        <dd>二级菜单</dd>
</dl>
<!--[if lte IE 6]></a><![endif]-->

Jetbrains全家桶1年46,售后保障稳定

<dl>
        <dt>一级菜单</dt>
        <dd>二级菜单</dd>
        <dd>二级菜单</dd>
        <dd>二级菜单</dd>
</dl>

下拉菜单由于实用,所以受到人们的欢迎。下拉菜单通常是由
javascript 来实现的,也应该由
javascript 来实现,因为这属于行为层范围。然而大家知道,使用
CSS 的
:hover 伪类也可以制作下拉菜单,比起
javascript 来,使用
CSS 制作更简单,且更容易理解。但由于
IE6 只有 a 标签支持
:hover 伪类,所以又给这种带来了“阻碍”。不过大家还是比较喜欢纯
CSS 下拉菜单,现在我们就利用
IE条件注释来制作一个纯
CSS 下拉菜单。为了便于理解,选择了很很简单的代码,至于更复杂的,大家可以触类旁通、举一反三。

XHTML 代码:

CSS 代码:

dd { display:none; }
dl:hover dd { display:block; }

查看Demo

在 IE7 和 FF 等标准浏览器中,下拉菜单可以正常使用,但 IE6 中却没有效果。 既然 IE6 只有 a 标签才支持 :hover,那就加上 a 标签。XHTML 代码改写成:

CSS 代码改写成:

dd { display:none; }
dl:hover dd, a:hover dd { display:block; }

查看Demo

然而在 IE6 中依然没有效果,为什么呢?难道代码有错?其实代码没有错,这是IE6 的 BUG,关于次 BUG 你可以参看《:hover伪类在IE6中的BUG》。可以加上一些属性来消除此BUG,这里给 a:hover 加 border:0,即CSS 代码再次改写成:

dd { display:none; }
dl:hover dd, a:hover dd { display:block; }
a:hover { border:0; }

查看效果

此时在 IE6 中鼠标移动到上面下拉菜单出现了。然而给每个菜单加上连接的时候,IE6 里又不行了,为什么?为什么?不知道。。。不过再给IE条件注释里的 a 标签里再套上一个表格,即 XHTML 代码改写成如下:

<!--[if lte IE 6]><a href="#"><table><tr><td><![endif]-->
<dl>
        <dt><a href="#">一级菜单</a></dt>
        <dd><a href="#">二级菜单</a></dd>
        <dd><a href="#">二级菜单</a></dd>
        <dd><a href="#">二级菜单</a></dd>
</dl>
<!--[if lte IE 6]></td></tr></table></a><![endif]--> 

查看Demo

此时,下拉菜单在 IE6 里没有问题了。

更多例子:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/234142.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 视频直播连麦技术详解「建议收藏」

    视频直播连麦技术详解「建议收藏」前言:随着带宽、Wifi的不断升级,手机的普及,直播技术不断突破,各种门槛在降低,全民直播时代已经来临。直播也深入到各行各业,比如说在线教育,还有财经行业等,也渐渐成为各行各业的标配。云帆加速自成立以来就一直致力于流媒体领域企业服务,尤其对于直播,目前已经推出了针对于不同场景的直播云解决方案,在保证广大用户使用体验的前提下,为客户节省更多的研发成本。无论是传统企业转型,或者是创业企业,云帆加速都…

    2022年7月24日
  • C++求素数模板[通俗易懂]

    C++求素数模板[通俗易懂]欢迎访问我的PAT技巧篇boolisprime(inta){//素数=质数 if(a<=1)returnfalse; intsqr=(int)sqrt(a*1.0); for(inti=2;i<=sqr;i++) if(a%i==0)returnfalse; returntrue;

    2022年7月19日
  • PHOTOSHOP MAC快捷键

    PHOTOSHOP MAC快捷键工具箱(多种工具共用一个快捷键的可同时按【Shift】加此快捷键选取)矩形、椭圆选框工具【M】裁剪工具【C】移动工具【V】套索、多边形套索、磁性套索【L】魔棒工具【W】喷枪工具【J】画笔工具【B】像皮图章、图案图章【S】历史记录画笔工具【Y】像皮擦工具【E】铅笔、直线工具【N】模糊、锐化、涂抹工具【R】减淡、加深、海棉工

    2022年6月24日
  • python初级:基础知识-字符串

    python初级:基础知识-字符串

    2021年10月6日
  • dos清除windows密码命令_哪些文件会被dos病毒感染

    dos清除windows密码命令_哪些文件会被dos病毒感染 今天,朋友叫我帮看看他的电脑,说是中了个比较NB的病毒,我颇感兴趣!因为好久没有遇到有挑战性的病毒了!今天又可以练练手了^_^打开他的电脑,并没有发现什么特别具有破坏力的现象。exe、com、src等等文件都没有被感染,GHOST备份文件也还在。仔细查看系统,归纳起来,中毒后主要呈现如下症状:1.杀毒软件被中止和禁止重新启用,系统垃圾清除类软件被禁止启用。中毒后注销重新进入系

    2022年10月3日
  • Gamma校正及其实现

    Gamma校正及其实现图2中左图为原图,中图为gamma = 1/2.2在校正结果,原图中左半侧的灰度值较高,右半侧的灰度值较低,经过gamma = 1/2.2校正后(中图),左侧的对比度降低(见胡须),右侧在对比度提高(明显可以看清面容),同时图像在的整体灰度值提高。右图为gamma = 2.2在校正结果,校正后,左侧的对比度提高(见胡须),右侧在对比度降低(面容更不清楚了),同时图像在的整体灰度值降低。

    2022年6月17日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号