CSS float:left 为什么不起作用? 下面本篇文章就来给大家介绍一下相关原因. 有一定的参考价值, 有需要的朋友可以参考一下, 希望对大家有所帮助.
float:left 不会失效, 只是没有达到你期望的显示效果.
float 属性是较早的一个 CSS 属性, 所有主流浏览器都支持. 在 CSS 中, 任何元素都可以浮动. 浮动元素会生成一个块级框, 而不论它本身是何种元素.
但是:
1, 如果在一行上只有极少的空间可供浮动元素, 那么这个元素会跳至下一行, 这个过程会持续到某一行拥有足够的空间为止. 这时候可能你就会发现显示与你的预期效果不符.
2, 为某元素 (A) 设置 float 表示浮动后, 元素 A 脱离文档流, 不在文档流中占据空间, 如果在 A 后面的元素没有 float 属性, 很明显会显示在本该由 A 占据的位置上(因为 A 脱离了文档流), 这时候在一些情况下也可能你会发现显示与你的预期效果不符. 这时候可以使用 在 A 之后使用 clear 属性(如 clear:left) 来清除浮动.
在不存在语法笔误的情况下, 通常觉得 "失效"(与期望效果不符合), 都是上述这两种情况.
来源: http://www.css88.com/qa/css3/13483.html