我试图追踪我的web应用程序中间歇性的Chrome渲染错误。未在Chrome中应用CSS浮动...错误或用户错误?
切换“left”和“none”之间的浮动属性时,Chrome不重新渲染元素。 Firefox和IE的行为如预期。
点击“account-info”div切换浮动值。
var $items = $(".menu > span");
$("#account-info").on("click", function() {
if ($items.css("float") === "left") {
$items.css("float", "none");
} else {
$items.css("float", "left");
}
});
#account-info {
float: right;
background-color: #eee;
}
.menu .icon {
display: block;
}
.menu span {
/*display: block;*/
float: left;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<div id="account-info">
<div class="menu">
<span class="icon">[left-icon]</span>
<span>User Name</span>
<span class="icon">[right-icon]</span>
</div>
</div>
如果指定float:left
或float:right
参考时display:block;
未被注释然后Chrome并再浮起的元素,但我一直的印象,这是不必要的声明display:block
下:Implied Block | CSS-Tricks
那么这是Chrome中的一个错误还是我在这里错过了一些东西?
铬版39.0.2171.71m /视窗8.1 64位
在Chrome中,我似乎在使用或不使用'display:block'的情况下正确地浮动。 – philtune 2014-12-04 21:13:00
在您的问题中发布您的代码。 – j08691 2014-12-04 21:13:10
但是我注意到当所有的浮标都被移除时,''的奇怪叠加。 – philtune 2014-12-04 21:18:31