我正试图设计一个定义列表,以便
dt
标记开始新行,后面可以跟任意数量的
dd
同一行上的元素。在现代浏览器中,这很简单
dt {
float:left;
clear:left;
}
dd {
float:left;
}
然而,在IE7中,如果clearing元素有float,则后续的float不受影响。(
example
)有没有解决这个问题的办法?我四处寻找,但通常建议的解决方案似乎都不适用:
-
因为这是一个定义列表,所以我不能在
div
.
-
我不想使用不可见的非浮动清算元素-它必须是
日期
或
尽职调查
,以及使用定义列表而不是表或
span
-
br
soup要有语义标记,这会被纯粹的表示方式搞砸
日期
/
尽职调查
元素。
-
据我所见,基于触发的方法
hasLayout
(从而触发内联块行为)例如
this
如果每行的元素数不固定,则不工作。(另外,我不想费心去掉空白。)
-
我找不到
this solution
合作
dl
而不是
ul
;均匀设置
display:list-item
没有帮助。
有没有其他方法强制IE7模拟标准的浮点行为?