2

我正在做一个仅使用 CSS 的滑出式登录框。我面临的问题是,在 FireFox(我使用的是 Firefox 16.0)中,滑出动画会闪烁。它在 chrome 和 Safari 中运行良好(IE 中没有动画但不闪烁,登录框显示正常)。这是HTML:

<div id="slideout">
        <div id="slideout_inner">
             <form id="loginForm" action="#" method="POST">
                <table cellspacing="0">
                    <tbody>
                        <tr>
                            <td><label for="lUsername">Username</label></td>
                            <td><label for="lPassword">Password</label></td>
                        </tr>
                        <tr>
                            <td><input type="text" name="username" id="lUsername" class="required" /></td>
                            <td><input type="password" name="password" id="lPassword" class="required" /></td>
                            <td><input type="submit" value="Login" /></td>
                        </tr>
                        <tr>
                            <td><span class="error"></span></td>
                            <td><span class="error"></span></td>
                        </tr>

                    </tbody>
                </table>
            </form>
        </div>
        <label>Login</label>

这是CSS

#slideout {
  position: fixed;
  top: 0px;
  left: 0;
  -webkit-transition-duration: 0.3s;
  -moz-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
#slideout_inner {
  position: fixed;
  top: -250px;
  left: 0px;
  -webkit-transition-duration: 0.3s;
  -moz-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
#slideout:hover{
  top: 250px;
}
#slideout:hover #slideout_inner{
  top: 0;
}

这是问题的JSFiddle如何修复 Firefox 中的闪烁问题?谢谢

4

1 回答 1

3

这个JSFiddle或许能帮到你。

像这样写:

#slideout {
  position: fixed;
  top: 0;
  left: 0;
}
#slideout_inner{
    height:0;
    -webkit-transition-duration: 0.3s;
  -moz-transition-duration: 0.3s;
  -o-transition-duration: 0.3s;
  transition-duration: 0.3s;
  overflow:hidden;
}
#slideout:hover #slideout_inner{
  height:200px;
  border:1px solid red;
}

或者

这个JSFiddle

于 2012-10-26T11:46:04.737 回答