我有一个项目(元素A),我已设置为float:right
。
不幸的是,另一个团队编写的页面上的另一个元素(元素B)使用clear:both
,这意味着它最终会在我的元素下面,创建一个尴尬的空白区域。虽然clear:both
是在我添加元素之前编写的,并且没有考虑到它,但我宁愿在我的元素中处理它而不是改变其他人的CSS。
有没有办法覆盖清除:两者都是为了让我的元素不被清除,而另一个团队的项目可以留在我的旁边?基本上,我想要元素B和元素A在同一行,但只能通过操作元素A。
答案 0 :(得分:2)
将clear:none
添加到元素中,以便它不会被清除。它应该覆盖您的同事代码,如果没有,请使用!important
属性
答案 1 :(得分:1)
试试这个:
<div style="float:right;height:0;">Mine</div>
<div style="clear:both;">Theirs now</div>
<div style="height:50px" id="blankspaceforstackoverflow"></div>
<div style="float:right">Mine</div>
<div>Where I want this item, without changing its css.</div>
在div
中,添加:
height:0;
div
&#39}将根据其内容自然调整大小。
此规则的一个例外是div
包含浮动元素。如果是这种情况,您需要做一些额外的工作以确保包含div
清除浮点数。您可以使用clearfix
方法执行此操作。
<强> More info 强>
<强> JSFiddle Demo 强>
答案 2 :(得分:0)
如果我理解正确,那么第二个元素不应该是浮动的,所以它将在前一个元素的下面。
可以是inline-block
或inline-table
甚至block
和text-align:right;
答案 3 :(得分:0)
执行此操作的最佳方法可能是将clear: none
添加到元素中,因此它不会最终位于浮动元素下方。您可以从了解更多有关房产的信息中受益。 The clear property与float property直接相关,因此如果您向元素添加clear: both
,则必须在下面添加浮动元素。