Flex и Grid - разные животные, поэтому простое поведение в flex может не очень хорошо сказаться на grid.
Элемент flex может центрироваться по всему контейнеру, так как макет flex работает с flex flex * . Гибкая линия - это строка или столбец.
Когда гибкий элемент просят центрировать в строке / столбце, он получает доступ к доступному пространству на всей строке, от начала до конца.
Однако в макете сетки линии сетки должны сталкиваться с чем-то, чего нет в гибких линиях: отслеживать стены . Например, в вашем коде есть три столбца. Эти столбцы разбивают линию сетки на три отдельных раздела, а элементы сетки ограничиваются разделом.
Поэтому элемент сетки нельзя центрировать в строке, используя свойства выравнивания ключевых слов (например, justify-content
или justify-self
), поскольку стены, разделяющие столбцы, ограничивают движение. Эта проблема не существует на гибких линиях.
Чтобы элемент сетки был отцентрирован по строке, в контейнере должен быть только один столбец (то есть без разделителей), или элемент должен быть явно перемещен в центр, используя что-то вроде линейное размещение . В противном случае используйте flexbox.