如何创建纯 CSS(垂直)下拉菜单?
下午好,
我当前的任务是为网站创建几个样式表。其中一种网站样式要求我创建一个下拉菜单,但是我根本不允许更改 HTML 代码,所以基本上我被要求仅使用 CSS 创建一个类似下拉菜单的菜单。
以下是我必须以下拉菜单形式显示的 HTML 代码:
<div id="global-nav">
<ul>
<li><a href="#products">Products</a>
<ul>
<li><a href="#widgets">Widgets</a></li>
<li><a href="#sites">Sites</a></li>
<li><a href="#gadgets">Gadgets</a></li>
</ul>
</li>
</ul>
但也有不同的要求: 每个列表项前面不应有任何点或圆圈。
我想知道是否可以仅使用 CSS 来完成此任务。 有什么办法可以用 CSS 做到这一点吗?
Good afternoon,
My current task is to create several stylesheets for a website. One of the websites styles requires me to create a drop-down menu, I however am not allowed to change the HTML code at all, so basically I'm asked to create a drop-down like menu with CSS only.
Here is the HTML code I have to display in form of a drop-down menu:
<div id="global-nav">
<ul>
<li><a href="#products">Products</a>
<ul>
<li><a href="#widgets">Widgets</a></li>
<li><a href="#sites">Sites</a></li>
<li><a href="#gadgets">Gadgets</a></li>
</ul>
</li>
</ul>
There however are different requirements as well:
There shouldn't be any dots or circles preceding each list item.
I'm wondering whether it is possible to accomplish this task with CSS only or not.
Is there any way I can do this with CSS?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
水平扩展的垂直菜单
jsBin demo
垂直菜单(仅限移动设备)
此菜单可能最适合移动设备(较小屏幕的 CSS),否则显示/隐藏会影响用户体验
jsBin 演示
Vertical menu with horizontal expansion
jsBin demo
Vertical menu (mobile only)
this one might best suit for mobile (smaller screens CSS) otherwise the show/hide would troll with User Experience
jsBin demo
只是上述出色解决方案的稍微增强版本。
Just a slightly enhanced version of the great solution above.
上一篇文章的代码是错误的。
文档中不能有超过 1 个同名 ID,因此如果使用上面的代码,则需要将
ID="global-subnav"
更改为class ="global-subnav"
,然后将 CSS 从
#global-subnav
更改为.global-subnav
The code is wrong on the last post.
You can't have more than 1 ID with the same name in a document, so if you use the code above, you'll need to change
ID="global-subnav"
toclass="global-subnav"
and then change the CSS from
#global-subnav
to.global-subnav