我有一个< div>我想要自己一条路。根据
W3Schools,这条规则:
div.foo { clear: both; }
应该是这样的:
“No floating elements allowed on either the left or the right side.”
但是,如果我浮动两个< div>剩下的元素,并将上述规则应用于第一个,第二个不会发生。
另一方面,如果我将“clear:left”应用于第二个÷ div>,那么它向下移动到下一行。这是我的正常做法,但我不明白为什么我要这样做。
上面的W3Schools的描述不好说,还是我错过了什么?清算规则是否只能移动要应用的元素?
回答
感谢Michael S和John D的良好解释。沃伦指出the CSS2 spec,那是我找到这个答案(强调我的)的地方:
This property indicates which sides of an element’s Box(es) may not be adjacent to an earlier floating Box.
所以:clear只影响应用它的元素的位置,相对于在代码之前出现的元素。
令我失望的是,我无法告诉我的< div>使其他divs下降,但他们是休息。