首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >响应纯CSS菜单

问响应纯CSS菜单
EN

Stack Overflow用户
提问于 2014-10-14 15:21:09
回答 3查看 434关注 0票数 0

试图使一个子菜单出现在悬停。

在目前的状态下,非常基本的(没有样式)只是试图获得功能。

HTML:

代码语言:javascript
复制
<nav class="main_nav">
        <ul class="main_nav">
            <li><a class="show_menu" href="#">Menu</a></li>
                <li>
                    <ul>
                        <li><a class="hidden_nav" href="#">Functions</a></li>
                        <li><a class="hidden_nav" href="#">Forms</a></li>
                        <li><a class="hidden_nav" href="#">PHP Info</a></li>
                        <li><a class="hidden_nav" href="#">Encoding</a></li>
                    </ul>
                </li>
        </ul>                   
    </nav>  

CSS:

代码语言:javascript
复制
.hidden_nav {
display: none;
}

.show_menu:hover > .hidden_nav {
display: block;
color: green;
}

我的问题是CSS目标-以上不是我尝试过的唯一方法。任何帮助都将不胜感激。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-10-14 15:27:03

有一些方法你应该重组这一点。您应该将子导航的ul设置为隐藏。然后,您可以让子导航器是兄弟或子(下面是一个兄弟),并在.show_menu父li悬停时显示它:

更新:

HTML

代码语言:javascript
复制
<nav class="main_nav">
    <ul class="main_nav">
        <li><a class="show_menu" href="#">Menu</a>
                <ul class="subnav">
                    <li><a class="hidden_nav" href="#">Functions</a></li>
                    <li><a class="hidden_nav" href="#">Forms</a></li>
                    <li><a class="hidden_nav" href="#">PHP Info</a></li>
                    <li><a class="hidden_nav" href="#">Encoding</a></li>
                </ul>
         </li>
    </ul>                   
</nav>  

CSS

代码语言:javascript
复制
.subnav {
  display: none;
 }

.main_nav li:hover ul.subnav {
  display: block;
  color: green;
}

小提琴

票数 0
EN

Stack Overflow用户

发布于 2014-10-14 15:23:09

这个语法的意思是“直接子”:

代码语言:javascript
复制
.show_menu:hover > .hidden_nav

试一试:

代码语言:javascript
复制
.show_menu:hover .hidden_nav
票数 0
EN

Stack Overflow用户

发布于 2014-10-14 15:34:20

您的代码对于您要完成的任务的结构很差。我将向您展示一个实用的、时尚的示例,帮助您快速地帮助您,而不是详细介绍。

在行动中看到它:http://jsfiddle.net/xLkntwkt/2/

代码语言:javascript
复制
<nav class="main_nav">
    <ul class="main_nav">
        <li>
            <a class="show_menu" href="#">Menu</a>        
            <ul class="hidden_nav">
                <li><a href="#">Functions</a></li>
                <li><a href="#">Forms</a></li>
                <li><a href="#">PHP Info</a></li>
                <li><a href="#">Encoding</a></li>
            </ul>
        </li>

        <li>
            <a class="show_menu" href="#">Menu 2</a>        
            <ul class="hidden_nav">
                <li><a href="#">Functions</a></li>
                <li><a href="#">Forms</a></li>
                <li><a href="#">PHP Info</a></li>
                <li><a href="#">Encoding</a></li>
            </ul>
        </li>

        <li>
            <a class="show_menu" href="#">Menu 3</a>        
            <ul class="hidden_nav">
                <li><a href="#">Functions</a></li>
                <li><a href="#">Forms</a></li>
                <li><a href="#">PHP Info</a></li>
                <li><a href="#">Encoding</a></li>
            </ul>
        </li>
    </ul>                   
</nav>  

CSS

代码语言:javascript
复制
ul.main_nav > li {
    background: #333;
    color: #fff !important;
    padding: 10px;
}

ul.main_nav > li a {
    color: inherit;
    text-decoration: none;
}

ul.main_nav > li .hidden_nav {
    max-height: 0px;
    opacity: 0;

    transition: all 0.25s ease-in-out;
}

ul.main_nav > li:hover .hidden_nav {
    max-height: 300px;
    opacity: 1;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26364454

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档