如何使没有内容的DIV有宽度?

我试图给DIV添加一个宽度,但是我似乎遇到了一个问题,因为它没有内容。 以下是我到目前为止的CSS和HTML,但它不工作:

CSS

body{ margin:0 auto; width:1000px } ul{ width:800px; } ul li{ clear:both; } .test1{ width:200px; float:left; } 

HTML

 <body> <div id="test"> <ul> <li> <div class="test1">width1</div> <div class="test1">width2</div> <div class="test1">width3</div> </li> <li> <div class="test1"></div> <div class="test1">width2</div> <div class="test1">width3</div> </li> <li> <div class="test1"></div> <div class="test1">width2</div> <div class="test1">width3</div> </li> </ul> </div> 

一个div通常至less需要一个不间断的空间(&nbsp;)才能有一个宽度。

使用paddingheight或宽度的空白div生效

编辑:

非零分min-height也很好

使用min-height: 1px; 一切都至less有1px的最小高度,所以没有额外的空间被nbsp或padding占用,或被迫首先知道高度。

使用CSS来为你的div添加一个零宽度的空间。 div的内容不会占用空间,但会强制div显示

 .test1::before{ content: "\200B"; } 

它有宽度但没有内容或高度。 给类test1添加一个高度属性。

有不同的方法来使空的DIV float: leftfloat: right可见。

这里介绍我所知道的:

  • 设置width (或width-min )与height (或min-height
  • 或设置padding-top
  • 或者设置padding-bottom
  • 或设置border-top
  • 或设置border-bottom
  • 或使用伪元素 ::before::after with:
    • {content: "\200B";}
    • {content: "."; visibility: hidden;} {content: "."; visibility: hidden;}
  • 或放入&nbsp; 在DIV内部(这有时会带来意想不到的效果,例如与text-decoration: underline;相结合text-decoration: underline;

尝试添加display:block; 到你的testing1

&#160; 可能会诀窍; 在XSL文档中工作