CSS 的浮动问题 初学者

html-css06

CSS 的浮动问题 初学者,第1张

1.样式输写错误(一楼的讲过了)

2.(这个是主要原因) img元素是行级元素,要当一行放不下才会自动换行

修改:

将img改为DIV或其它块级元素及可

<div sytle="float:left">

<img src="/i/eg_smile.gif" />

</div>

还不明白再追问!

html元素有几个是块级元素如p,h1-h6等,这些元素自带display block属性,元素间相当于会有一个换行符不能同排排列,除非定义浮动。而img是内联块元素也就是display inline-bloack,可以并排显示的。 两个元素一个加了浮动一个没加浮动,只会是浮动的优先排列在左或者右,也就是没有浮动的元素会被有浮动的拆队。除非2个元素都是浮动的他们才会老老实实的按顺序排在一起。浮动不是覆盖只是位置的先后罢了,便于将不同类型的元素并排。css里没有覆盖之说。你写的例子最终效果就是b图排在a图左边而已。

你犯了一个细节错误。我刚查看了你的css,为什么fr有效,fl却无效。因为你fl上面的样式属性写错了.clearfix(zoom:1)应该是.clearfix{zoom:1}。是{}大括号,所以造成了fl无效。