#css #css3 #css_grid #grid_layout
собственно сетка на codepen main { display: grid; padding: 10px 0 10px 10px; grid-template: 1fr/repeat(6, 1fr); grid-template-areas: "a a a b b b"; grid-auto-columns: 2fr; grid-column-gap: 10px; grid-row-gap: 10px; } main .a { grid-area: a; } main .b { grid-area: b; } .cat { height: 150px; background-size: cover; background-position: center; overflow: hidden; position: relative; cursor: pointer; display: flex; justify-content: center; align-items: center; text-align: center; font-size: 20px; background-color: green; color: #fff; } .cat:hover { background-color: #004800; }Как сделать так, чтобы после первой строки остальные элементы занимали не 1/6, а 1/3? Без использования вложенных элементов. Количество элементов после первой строки может быть абсолютно любым, поэтому я хочу использовать автоматическое присвоение ширины, но свойство grid-auto-columns: 2fr; не дает результатов.
Ответы
Ответ 1
Задаем шаблон из 6 равных столбцов grid-template-columns: repeat(6, 1fr) Обращаемся к первым двум элементам и делаем так, чтобы они занимали по три столбца каждый с помощью правила span 3 Остальные элементы занимают два столбца - span 2 body { display: grid; grid-template-columns: repeat(6, 1fr); grid-gap: 10px; min-height: 100vh; } div { background: pink; grid-column: span 2; display: flex; justify-content: center; align-items: center; min-height: 100px; } div:first-child, div:nth-child(2) { grid-column: span 3; }123456789
Комментариев нет:
Отправить комментарий