列表项中的浮动 div (ul, li)

Floating div's in list items (ul, li)

提问人:Raanan Avidor 提问时间:9/18/2008 最后编辑:AwaisRaanan Avidor 更新时间:10/22/2019 访问量:4589

问:

我有一个列表,每个列表都有两个,我想将它们一个接一个地浮动,并且我希望占据整个可用空间。我该怎么做?<div><li><li>

<html>
    <head>
        <title></title>
        <style type="text/css">
            body {
            }
            ul {
            }
            li {
            }
            .a {
            }
            .b {
            }
        </style>
    </head>
    <body>
        <ul>
            <li>
                <div class="a">
                    content
                </div>
                <div class="b">
                    content
                </div>
            </li>
        </ul>
    </body>
</html>
HTML css 浮点数

评论


答:

-1赞 workmad3 9/18/2008 #1
li{width:100%;}
.a{}
.b{float: left;}

根据我对CSS的了解,这应该按照要求进行

0赞 anon 9/18/2008 #2

如果不检查以确保,这应该有效


LI { width: 100%; }
.a { float: left; }
.b { float: right; }
4赞 Kent Fredric 9/18/2008 #3
 *{ margin: 0; padding: 0;}
 li{  width: 100%: display: block; } 
 li:after{ clear: both; } 
 div.a{ width: 49%;  float: left; }
 div.b{ width: 49%;  float: left; } 

应该可以解决问题。

2赞 AdamB 9/18/2008 #4

对于 divs,你只需要向左浮动,而 li,你想做一个清除。所以:

li
{
    clear: left;
}
.a
{
    float: left;
}
.b
{
    float: left;
}

评论

0赞 roborourke 1/26/2009
您必须在浮动元素上指定宽度,否则您将无法获得所追求的 2 列效果。49.9%的人应该这样做。
0赞 Mike Becatti 9/18/2008 #5
li { width: 100%;}
.a { float: left;}
.b { float: left;}
0赞 user4903 9/19/2008 #6

我假设取整个空间,你的意思是 100% 的宽度。我还假设您不希望将样式应用于列表,这就是我在此示例中删除它的原因。这也是无黑客攻击的。只要列表项具有宽度和 overflow: hidden 属性/值对,就不需要清除任何内容。

ul,
li {
    width: 100%;
    list-style-type: none;
    margin: 0;
    padding: 0;
}
li {
    overflow: hidden;
}
li div.a,
li div.b {
    float: left;
}
1赞 Labanino 1/25/2013 #7

我看到这是一篇旧帖子,但如果有人遇到同样的问题,请考虑一下:

<div>A block-level section in a document</div>
<span>An inline section in a document</span>

您可以使用 span 代替 div

要获得一个 div 除了另一个之外或水平方向,您必须使用 .CSS,但如果你使用 span,它自然会。将以下代码复制并粘贴到 html 中,看看我在说什么:

<ul>
  <li>
      <div style="background-color:red">red</div>
      <div style="background-color:blue">blue</div>
  </li>
  <li>
      <span style="background-color:red">red</span>
      <span style="background-color:blue">blue</span>
  </li>
</ul>

此外,至少对于 Microsoft 来说不会验证。<li><div></div></li>