jQueryの.slideToggleを使用しているとき、.primary-navigationで背景色が優先されていますが、持続的ではありません。これは、アニメーション中に好ましい背景色を示しますが、アニメーションが完了したときにそのままにはなりません。私は頭を掻き続けるが、私はそれを理解することはできない。なぜこれが起こっているのか、どうやって解決するのか誰にも分かりますか?この問題は、最新のChrome、FF、iOS Safariで発生します。jQueryを使用しているときの背景色のフラッシュ.slideToggle
EDIT:問題を解決したjsFiddleがあります:jsFiddleです。迅速な返信のためにscessorのおかげで!
HTML:
<header class="banner clearfix">
<h1 class="alpha">Site Title</h1>
<nav class="primary-navigation-wrapper">
<ul class="primary-navigation">
<li><a href="#" id="current-page">Blog</a></li>
<li><a href="#">Archives</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Contact</a></li>
</ul>
</nav>
</header>
CSS:
.banner {
background-color: blue;
}
.banner h1 {
padding: 6px;
float: left;
}
h1.js-toggle-navigation {
float: right;
padding: 6px;
cursor: pointer;
}
.primary-navigation {
clear: both;
display: none;
background-color: red;
}
.primary-navigation li {
float: left;
display: block;
}
.primary-navigation a {
padding: 6px 0 6px 6px;
display: block;
}
jQueryの(1.7.2。):
<script type="text/javascript">
jQuery(document).ready(function($){
/* prepend menu icon */
$('.primary-navigation-wrapper').prepend('<h1 class="js-toggle-navigation">Menu</h1>');
/* toggle nav */
$(".js-toggle-navigation").on("click", function(){
$(".primary-navigation").slideToggle();
$(this).toggleClass("active");
});
});
</script>
私はjsFiddleを作っているばかりでした。私は浮遊を止めるためにオーバーフローを考えていました。明らかにclearfixは動作しませんが、overflow:hiddenは明らかです。私はオーバーフローを試みました:自動、なぜ私に尋ねないでくださいが、それはオーバーフローです:隠されています。ありがとうございます。 –
ようこそ。 – scessor