使一个弹性项目固定宽度,其兄弟姐妹大小相等

时间:2017-10-16 20:26:29

标签: html css css3 flexbox

我有四个列表项,我希望其中三个保持相同的大小,另一个保持300px。

我的HTML:

   <ul class="test">
      <li class="desc">Test description</li>
      <li class="test">Test</li>
      <li class="test">Test</li>
      <li class="test">Test</li>
    </ul>

我的SASS:

      ul.test {
        flex: 1 0 auto;
        flex-direction: row;
        display: flex;
      }

      li.desc{
        width: 300px;
      }

      li.test{
        background: green;
        flex: 1 0 auto
      }

我希望第一个li的宽度为300px,然后其他三个的大小相同。

1 个答案:

答案 0 :(得分:4)

&#13;
&#13;
ul.test {
  display: flex;
  padding: 0;
  list-style: none;
}

li.desc {
  width: 300px;
  flex-shrink: 0;           /* disable default shrinking behavior */
  background-color: orange;
}

li.test {
  flex: 1;                  /* distribute free space evenly among items */
  background: lightgreen;
}
li{ border-right: 1px solid black; }
&#13;
<ul class="test">
  <li class="desc">Test description</li>
  <li class="test">Test</li>
  <li class="test">Test</li>
  <li class="test">Test</li>
</ul>
&#13;
&#13;
&#13;