外部Div在内部具有内联块元素时的内容宽度

时间:2017-08-19 02:23:02

标签: html css html5 css3 inline

所以我有一个包装器div,我想成为它内容的宽度。我已经读到了这样做的最好方法是使它成为display: inline-block;问题是,当我在div中有一堆内联块元素时,这不起作用。有什么方法可以解决这个问题吗?

JSFiddle

HTML

<div class="wrapper">
  <div class="inner-wrap">
  <h1>Heading</h1>

    <div class="item">
      <h2>Item 1</h2>
      <p>Details</p>
    </div>
    <div class="item">
      <h2>Item 1</h2>
      <p>Details</p>
    </div>
    <div class="item">
      <h2>Item 1</h2>
      <p>Details</p>
    </div>
    <div class="item">
      <h2>Item 1</h2>
      <p>Details</p>
    </div>
  </div>
</div>

CSS

.wrapper {
  background-color: white;
  width: 100%;
  display: block;
}

.inner-wrap {
  display: inline-block;
  border: 1px solid black;
}

.item {
  display: inline-block;
  background-color: red;
  margin: 20px;
  padding: 30px;
}

2 个答案:

答案 0 :(得分:0)

使用inline-flex代替inline-block会使内包装缩放到其子代:

.inner-wrap {
  display: inline-flex;
  border: 1px solid black;
}

答案 1 :(得分:0)

你的意思是你想要.inner-wrap是最宽的.item的宽度? 如果是的话,那么     .item {显示:块;宽度:汽车;}