Вертикальное позиционирование в CSS Grid Layout?

250
19 марта 2018, 23:44

Получилось вертикально позиционировать по центру item-4-1 во многих браузерах, за исключением IE11, вроде префиксы написал, но все равно не работает, в чем проблема?

UPD: возможно, есть решение для вертикального выравнивания в рамках задачи?

Набросал пример для наглядности:

* 
{ 
  margin: 0; 
  padding: 0; 
} 
 
.wrapper 
{ 
  display: -ms-grid; 
  display: grid; 
  -ms-grid-columns: 1fr 15px 1fr 15px 1fr; 
  grid-template-columns: 1fr 1fr 1fr; 
  -ms-grid-rows: 1fr 15px 1fr 1fr; 
  grid-template-rows: 1fr 1fr 1fr; 
  grid-column-gap: 15px; 
  grid-row-gap: 15px; 
} 
 
.wrapper-2 
{ 
  display: -ms-grid; 
  display: grid; 
  -ms-grid-columns: 1fr; 
  grid-template-columns: 1fr; 
} 
 
.wrapper-2 > .item 
{ 
  background: red; 
  -ms-grid-column-align: center; 
  justify-self: center; 
  -ms-flex-item-align: center; 
  -ms-grid-row-align: center; 
  align-self: center; 
} 
 
.wrapper > .item 
{ 
  background: #cfcfff; 
  padding: 15px; 
} 
 
.wrapper > .item-1 
{ 
  -ms-grid-column: 1; 
  -ms-grid-column-span: 1; 
  grid-column: 1 span 1; 
  -ms-grid-row: 1; 
  -ms-grid-row-span: 1; 
  grid-row: 1 / span 1; 
} 
 
.wrapper > .item-2 
{ 
  -ms-grid-column: 3; 
  -ms-grid-column-span: 1; 
  grid-column: 2 span 1; 
  -ms-grid-row: 1; 
  -ms-grid-row-span: 1; 
  grid-row: 1 / span 1; 
} 
 
.wrapper > .item-3 
{ 
  -ms-grid-column: 5; 
  -ms-grid-column-span: 1; 
  grid-column: 3 span 1; 
  -ms-grid-row: 1; 
  -ms-grid-row-span: 1; 
  grid-row: 1 / span 1; 
} 
 
.wrapper > .item-4 
{ 
  -ms-grid-column: 1; 
  -ms-grid-column-span: 1; 
  grid-column: 1 span 1; 
  -ms-grid-row: 3; 
  -ms-grid-row-span: 2; 
  grid-row: 2 / span 2; 
} 
 
.wrapper > .item-5 
{ 
  -ms-grid-column: 3; 
  -ms-grid-column-span: 1; 
  grid-column: 2 span 1; 
  -ms-grid-row: 3; 
  -ms-grid-row-span: 2; 
  grid-row: 2 / span 1; 
} 
 
.wrapper > .item-6 
{ 
  -ms-grid-column: 5; 
  -ms-grid-column-span: 1; 
  grid-column: 3 span 1; 
  -ms-grid-row: 3; 
  -ms-grid-row-span: 2; 
  grid-row: 2 / span 1; 
} 
 
.wrapper > .item:nth-child(odd) 
{ 
  background: #cff1ff; 
}
<div class="wrapper"> 
  <div class="item item-1">item-1</div> 
  <div class="item item-2">item-2</div> 
  <div class="item item-3">item-3</div> 
  <div class="item item-4 wrapper-2"> 
     
    <div class="item">item-4-1</div> 
     
  </div> 
  <div class="item item-5">item-5</div> 
  <div class="item item-6">item-6</div> 
</div>

READ ALSO
Заливка текста фоном из пятен различных цветов

Заливка текста фоном из пятен различных цветов

Хочу на SVG красиво сделать логотип сайта

230
Как лучше поступить?

Как лучше поступить?

Как лучше поступитьМне на главный экран лэндинга нужна картинка, как лучше её задавать: Через background главного блока либо через img ?

218
Сделать по центру

Сделать по центру

Приветствую! Как не пробовал сделать по центру - не получается, пробовал элементарными способами, думаю спрашивать не нужно какимиСсылка...

214