使一个 flex item 固定宽度并且它的兄弟元素都相同大小

Ang*_*arM 4 html css flexbox

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

我的 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>
Run Code Online (Sandbox Code Playgroud)

我的SASS:

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

      li.desc{
        width: 300px;
      }

      li.test{
        background: green;
        flex: 1 0 auto
      }
Run Code Online (Sandbox Code Playgroud)

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

Mic*_*l_B 5

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; }
Run Code Online (Sandbox Code Playgroud)
<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>
Run Code Online (Sandbox Code Playgroud)