выравнивание по вертикали с использованием сетки в реакции - PullRequest
0 голосов
/ 06 апреля 2020

Я обнаружил, что во многих системах пользовательского интерфейса библиотеки или фреймворка нет простого способа просто центрировать вертикально блок с шириной. Я просто хочу сказать, блок с максимальной шириной 200 пикселей в центре, как я могу избежать использования пользовательских css для его стилизации?

https://codesandbox.io/s/antd-layout-ch745

do c: https://ant.design/components/grid/

1 Ответ

0 голосов
/ 06 апреля 2020

Добиться центрирования легко. В сетке из 24 столбцов вы можете использовать компонент Col и поэкспериментировать с числами диапазона, чтобы убедиться, что ширина одинакова слева и справа. Например, это все настройки столбца, которые позволят вам центрироваться:

  • <Col span={12} offset={6}>
  • <Col span={10} offset={7}>
  • <Col span={8} offset={8}>
  • <Col span={6} offset={8}>

Просто выберите диапазон, который является номером события, и смещение равно (24 - диапазон) / 2.

Проблема заключается в максимальной ширине: 200 пикселей. Чтобы ограничить максимальную ширину значением, независимо от того, какой у него размер экрана, я боюсь, что вам придется написать для него пользовательский CSS просто потому, что нет ничего, что могло бы дать вам указанное значение c без вы указываете, что это значение.

В этом случае я предлагаю создать одну строку и один столбец, охватывающий всю строку, и использовать flex для центрирования вашего элемента:

<Col span={24}>
    <div style="display: 'flex'; justify-content: 'center';">
        <div style="flex: 1; max-width: '200px'">
        </div>
    </div>
</Col>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...