如何在3列网格设置中拉伸中间列

我正在尝试设置具有单行和三列“ grid”系统的标题。如:

* {box-sizing: border-box;}

.wrapper {
    border: 2px solid #f76707;
    border-radius: 5px;
    background-color: #fff4e6;
}

.wrapper > div {
    border: 2px solid #ffa94d;
    border-radius: 5px;
    background-color: #ffd8a8;
    padding: 1em;
    color: #d9480f;
}
.wrapper {
  display: grid;
  grid-template-columns: 100px,1fr,100px;
  grid-template-rows: 1fr;

  grid-template-areas: "a b c";

}
.item1 {
  grid-area: a;
  justify-self:start;
}
.item2 {
  grid-area: b;
  justify-self:stretch;
}
.item3 {
  grid-area: c;
  justify-self:end;
}
<div class="wrapper">
  <div class="item1">Item 1</div>
  <div class="item2">Item 2</div>
  <div class="item3">Item 3</div>
</div>

但是中间列只会居中而不是伸展。 这是小提琴https://github.com/infosec-intern/textmate-yara/pull/29

我如何使其伸展?

wuya790 回答:如何在3列网格设置中拉伸中间列

从您的grid-template-columns值中删除逗号,那么您不必担心单个项目的样式:

* {
  box-sizing: border-box;
}

.wrapper {
  border: 2px solid #f76707;
  border-radius: 5px;
  background-color: #fff4e6;
  display: grid;
  grid-template-columns: 100px 1fr 100px;
}

.wrapper>div {
  border: 2px solid #ffa94d;
  border-radius: 5px;
  background-color: #ffd8a8;
  padding: 1em;
  color: #d9480f;
}
<div class="wrapper">
  <div class="item1">Item 1</div>
  <div class="item2">Item 2</div>
  <div class="item3">Item 3</div>

</div>

,
* {box-sizing: border-box;}

.wrapper {
    border: 2px solid #f76707;
    border-radius: 5px;
    background-color: #fff4e6;
}

.wrapper > div {
    border: 2px solid #ffa94d;
    border-radius: 5px;
    background-color: #ffd8a8;
    padding: 1em;
    color: #d9480f;
}
.wrapper {
  display: grid;
  grid-template-columns: 100px 1fr 100px; /* there are no commas. */
  grid-template-rows: 1fr;

  grid-template-areas: "a b c";

}

.item2 {
  grid-area: b;
  justify-self:stretch;
} /* Item1 and Item2 automatically will be aligned at start and end. */
,

只需从您的grid-template-columns值中删除逗号即可。

 grid-template-columns: 100px 1fr 100px;

https://jsfiddle.net/3cv6ypq5/

本文链接:https://www.f2er.com/2857571.html

大家都在问