用纯CSS怎样制作下拉菜单,要点是什么
Admin 2022-06-17 群英技术资讯 870 次浏览
这篇文章主要讲解了“用纯CSS怎样制作下拉菜单,要点是什么”,文中的讲解内容简单、清晰、详细,对大家学习或是工作可能会有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧。导语:
这几天看面试题目的时候,经常能够看到用css去实现一个下拉菜单,但是我发现很多人却没能够做出来,最后只能勉强用js做出来。实话实说,我很震惊,这个功能实现起来很简单,甚至可以说是入门题目,怎么这么多人不会呢?所以今天来个面试干货,带大家直接手撸css做下拉菜单。
还是一样,话不多说,直接上效果图。
1,一个按钮,没点击前(手机端)或者鼠标没指向时(pc端)

2,点击后,或者鼠标指向后。


就能够显示下拉菜单,而且它的实现原理也很简单,只需要记住一点:hover,这个属性就行了。
我们直接上代码,稍后再来解释
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<style>
li{
list-style: none;
height: 28px;
}
#menu{
display: inline-block;
}
#menu #list {
max-height: 0;
transition: max-height 0.25s ease-out;
overflow: hidden;
background: #f5f4f4;
width: 80px;
margin: 0;
padding: 0;
text-align: center;
}
#menu:hover #list {
max-height: 200px;
transition: max-height 0.25s ease-in;
width: 80px;
margin: 0;
padding: 0;
}
.button{
height: 32px;
width: 80px;
margin-top: 6px;
border-radius: 4px;
color: #fff;
padding-left: 0;
padding-right: 0;
line-height: 32px;
background: #E33E33;
text-align: center;
}
</style>
</head>
<body>
<div id="menu">
<div class="button">更多信息</div>
<ul id="list">
<li>个人中心</li>
<li>我的博客</li>
<li>设置</li>
<li>退出登陆</li>
<li>注销</li>
</ul>
</div>
</body>
</html>
只需要设置一个div,然后给他设置两种状态,一种是没有:hover,一种是有:hover。并且在没有:hover的时候设置菜单隐藏就可以了(overflow: hidden;),其余的代码都是简单的盒子模型。
现在再来说一说:hover,这个东西是什么,它是一个css选择器,选择器用于选择鼠标指针浮动在上面的元素。 所以说当鼠标悬浮或者手机端点击的时候,就会触发这个属性,就能够让这个下拉菜单显示出来了。同时我们加上了transition属性,让下拉菜单有渐变的效果,更加感觉时下拉下来的。
所以说css选择器是不是很神奇,用的好的话,就不用写一大坨js代码。我将会在后续把css选择器做成一个专栏,到时候在系统的介绍所有的css选择器。
总结
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了css 借助autoflow 属性 实现 选座位效果,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
这篇文章主要介绍了纯css3使用vw和vh实现自适应的方法的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
这篇文章主要介绍了CSS常用样式之绘制双箭头的示例代码,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
这篇文章主要介绍了web字体加载方案优化小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
本文给大家分享用css怎样实现类似订单地址下的线条样式,一些订单在收获地址下方有四边形的线条样式的设计,那么这种线条样式是怎样做呢?本文就给大家分享一个实现方法,感兴趣的朋友可以参考。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008