title: Inline-Flex messes with vertical align
body: <p>Having an <code>inline</code> item next to an <code>inline-flex</code> with a nested <code>flex</code> box messes with the vertical alignment (it ignores the top margin), one solution I found was to put a <code>::before</code> in the <code>inline-flex</code> item, but I'm not really sure why this fixes it.</p>
  
  <p>The first one ignores the top margin on the label, the top margin works on the second one, because of the <code>::before</code>.</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-css lang-css prettyprint-override"><code>label {
    margin: 20px 5px 0 0;
  }
  
  .input-container {
    display: inline-flex;
  }
  
  .with-before::before {
    content: '';
  }
  
  .buttons {
    display: flex;
    flex-direction: column;
  }</code></pre>
  <pre class="snippet-code-html lang-html prettyprint-override"><code>&lt;div&gt;
    &lt;label&gt;Top margin ignored:&lt;/label&gt;
    &lt;div class="input-container"&gt;
      &lt;div class="buttons"&gt;
        &lt;button&gt;&amp;lt;&lt;/button&gt;
        &lt;button&gt;&amp;gt;&lt;/button&gt;
      &lt;/div&gt;
      &lt;input type="text"/&gt;
    &lt;/div&gt;
  &lt;/div&gt;
  &lt;br/&gt;
  &lt;div&gt;
    &lt;label&gt;Top margin works:&lt;/label&gt;
    &lt;div class="input-container with-before"&gt;
      &lt;div class="buttons"&gt;
        &lt;button&gt;&amp;lt;&lt;/button&gt;
        &lt;button&gt;&amp;gt;&lt;/button&gt;
      &lt;/div&gt;
      &lt;input type="text"/&gt;
    &lt;/div&gt;
  &lt;/div&gt;</code></pre>
  </div>
  </div>
  </p>