CSS div width - 仅限内容宽度..?

时间:2009-08-20 04:59:26

标签: css internet-explorer html

我正在努力让我的div成为我的内容的宽度,我可以在IE以外的所有其他浏览器中使用它,使用:

div#quoteHolder {
  height: 85px;
  display: inline-block;
}

有没有人知道如何解决这个问题?

哦,这是html代码..

<div id="quoteContainer">
  <div id="quoteHolder">
    <h2>"If you were lucky and lived in Port Melbourne, it might even be your local"</h2>
    <h3>The Age, Epicure. JUNE 22nd 2004</h3>
  </div>
</div>

3 个答案:

答案 0 :(得分:8)

IE支持内联块,但仅适用于本机内联的元素。因此,如果你真的想使用内联块,那么当列表或段落可能具有更多语义意义时(并且对于非CSS用户而言也会更好地降级)时,你只能使用跨度,强项和ems。

但是,如果在块元素上触发hasLayout(在该元素中设置hasLayout = true),然后将其设置为display:inline,它会神奇地成为IE中的内联块!通过使用属性hack(我非常喜欢),您可以隐藏显示:毫不费力地从所有非IE浏览器内联。

以下是代码,简单可爱:

display:-moz-inline-stack;
display:inline-block;
zoom:1;
*display:inline;

答案 1 :(得分:3)

IE在很多display模式下都有问题,请参阅此处:http://www.quirksmode.org/css/display.html。您可能正在寻找float: left,或display: inline,但height将不起作用。

答案 2 :(得分:1)

div#quoteHolder {
  height: 85px;
  display: inline-block;
  border: #a9a9a9 1px solid;
  float: left;
}