【问题标题】:Chrome Float Left IssueChrome 浮动左侧问题
【发布时间】:2013-11-27 02:04:35
【问题描述】:

我的 chrome 是最新的 31.0.1650.48 版本。

今天我注意到 float:left 似乎无法正常工作。 (IE & FF 很好,Chrome 过去也很好。)

HTML 是这样的:

<div class="listWrapper collapsed clearfix">
  <ul>
    <li><a href="" title="aa"></a></li>
    <li><a href="" title ="bb"></a></li>
    <li><a href="" title ="cc"></a></li>
  </ul>
  <div class="ui-checkbox" role="checkbox" tabindex="0" style="display:inline-block;"></div>
</div>

Css 是这样的:

.ui-checkbox {
   background: url("../images/elements/form.png") no-repeat -183px -331px;
   width: 37px;
   height: 31px;
   float: left; 
}

现在发生的事情是内部复选框 div 一开始不能浮动在 ulli 旁边。但是如果我右键单击那个 div --> Inspect Element --> Untick 'float: left' 然后重新勾选它,它就正确了。

谁知道这个?

添加:

ul 是 float:left 并且每个 li 实际上有 1 个背景图片和 float:left。在这种情况下,3 (li) 图像一起显示在 1 行中,并且下一个 div(复选框形状)应显示在同一行中。但是现在 div 显示到下一行,除非我取消勾选并重新勾选它的 float:left css。

再次添加

请查看 2 个结果的屏幕截图:

整个div是float:right,而inner ul,li和div是float left。但是一开始的绿色“复选框喜欢” div 显示在所有这些 li 下。当我取消勾选并重新勾选 float:left 时,它就可以了。

谢谢!

【问题讨论】:

  • 有什么理由同时使用 float:left 和 inline-block 吗?
  • 您介意提供输出的屏幕截图吗?
  • Ravi,其他一些页面需要在标签的同一行显示这个“类似复选框”的 div。即使我删除它,它也是一样的。
  • 使用 display:inline-block;
  • 我也来到了这里,因为 Chrome 30 和 Chrome 31 肯定会以不同的方式显示向左浮动。这似乎确实是渲染方面的一个重大变化。

标签: html asp.net css google-chrome


【解决方案1】:

检查您是否将明确的width 指定给&lt;ul&gt;。并检查您的 &lt;ul&gt;checkbox div 的宽度添加是否小于或等于div listWrapper 折叠的宽度强>。如果母 div 没有宽度,那么可以试试这个

.ui-checkbox {
   background-color:green;
   width: 37px;
   height: 31px;
   float: left; 
}

ul{
    float: left;
    width:50px;
}

查看Fiddle

或者更新Fiddle

【讨论】:

  • 这次结果OK。也许是因为我的 li 也有图像作为背景?
  • @Samuel Nah,背景与此无关。可能listWrapper 的宽度不大于ulcheckboxdiv 的总宽度。无论如何,它现在工作了吗? :)
  • 大师,listwrapper 实际上没有宽度,我们只希望它正确浮动。因为显示的li个数是动态的,所以我们无法设置listWrapper div的固定宽度。
【解决方案2】:
.ui-checkbox {
   background: url("../images/elements/form.png") no-repeat -183px -331px;
   width: 37px;
   height: 31px;
   float: left; 
   display:inline-block
}

【讨论】:

  • HTML 中的内联样式已经应用了这种样式
  • 我可以这样做,但结果是一样的:(
【解决方案3】:

不知道为什么你会从不同的浏览器得到不同的结果,但你需要浮动ul 元素以及将复选框放在它旁边。另外,正如您在帖子 cmets 中提到的那样,您有一个内联样式,将 display 属性更改为 inline-block,这显然否定了 float 属性。

Here's a codepen. 我用颜色替换了背景图片 url 只是为了显示行为。

【讨论】:

  • 我做了,但看起来没问题 :( 可能是因为我的 li 也使用图像?
猜你喜欢
  • 2017-04-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-23
  • 1970-01-01
  • 2011-10-30
相关资源
最近更新 更多