单击后再进行div移动

时间:2013-04-16 04:02:15

标签: html css html5 css3

点击链接时,我试图移动一些东西。我似乎无法让他们一起工作。任何人都知道如何这样做。

CSS

#drop:focus #login_dropdown {
    margin-top: 0;
}
#login_dropdown {
    width: 100%;
    height: 80px;
    background-color: #ccc;
    margin-top: -80px;
}

HTML

<div id="login_dropdown" class="clearfix">
    <div class="container">
        <div id="login_dropdown_header">
             <h1>Login</h1>

        </div>
        <form action="login.php" method="post" id="login_form" class="clearfix">
            <ul id="login_reg">
                <li>
                    <input type="text" name="username" placeholder="Username">
                </li>
                <li>
                    <input type="password" name="password" placeholder="Password">
                </li>
                <li>
                    <input type="submit" value="Login">
                </li>
                <li> <a href="register.php">Register</a>

                </li>
            </ul>
        </form>
    </div>
</div>
<header class="header">
    <div class="container">
        <div id="logo"></div>
        <nav>
            <ul> <a href="index.php"><li>Home</li></a>
 <a href="ledge_base.php"><li>Knowledge Base</li></a>
 <a href="faq.php"><li>FAQ</li></a>

                <!--<a href="#"><li>Teach</li></a>--> <a href="contact.php"><li>Contact</li></a>
 <a href="#"><li id="drop">Login/Register</li></a>

            </ul>
        </nav>
    </div>
</header>

无论如何,当点击#login_dropdown时,我试图让#drop将其边距更改为0。但点击后没有任何反应。有人能帮助我吗?

1 个答案:

答案 0 :(得分:0)

#drop:focus #login_dropdown {
    margin-top: 0;
}

看看那个CSS - 我看到你的逻辑是“当#drop成为焦点时,将margin-top设为零{/ 1}}

问题是#login_dropdown不是#login_dropdown的后代,它是一个方兴未艾。目前CSS中没有上升选择器,因此您可能需要使用javascript(或jQuery)来实现此目的。


虽然已经在CSS Selectors Level 4 Spec中提出 - 更多信息:http://coding.smashingmagazine.com/2013/01/21/sneak-peek-future-selectors-level-4/https://stackoverflow.com/a/1014958/497604