本文介绍了在CSS网格中创建一行跨越所有列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何让< legend> 跨越所有行,这样会搞乱< fieldset> 哪个被设计为3列CSS网格?

How I can make the <legend> span all rows, so it will mess up the <fieldset> which is styled as a 3 column CSS grid?

<fieldset>
  <legend>Personal Details</legend>
  <label class="field__label" for="first-names">
            First names
        </label>
  <input class="form__entry" id="first-names" type="text" name="firstName">
  <span class="form__feedback form__instructions">
            Must only use letters, spaces, hyphens and apostrophes
        </span>
</fieldset>

CSS:

form {
    display: grid;
    grid-template-columns: minmax(100px, max-content) minmax(200px, max-content) minmax(200px,1fr);
    grid-gap: 10px;
}

fieldset {
    display: contents;
}


推荐答案

也许最好使用:

fieldset legend {
       grid-column: 1/-1;
 }

或者如果你只需要3列

fieldset legend {
       grid-column: 1/ span 3;
 }

这篇关于在CSS网格中创建一行跨越所有列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-17 18:08