npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@evokit/grid

v1.1.1

Published

Резиновый макет сетки.

Downloads

10

Readme

EvoKit - Grid

Резиновый макет сетки.

Cетка вмещает до 10 столбцов. Она использует блоки с предварительно определенными классами внутри каждой сетки, которые определяют ширину столбца. Кроме того, можно создавать вложенную разметку.


Использование

Для того, чтобы создать контейнер сетки, добавьте класс .grid к родительскому блоку и класс .grid__item дочерним элементам.

HTML

<link href="@evokit/grid/dist/style.css" rel="stylesheet">

<div class='grid'>
    <div class='grid__item'>
        ...
    </div>
</div>

JSX

import Grid from 'evokit-grid';

<Grid>
    <Grid.Item>
        ...
    </Grid.Item>
</Grid>

Колонки

| Class | Description | |---------------------------------------|-------------------------------------------| | .grid_column_1 до .grid_column_10 | Делит на равные колонки. |

HTML

<div class='grid grid_column_2'>
    <div class='grid__item'>
        ...
    </div>
    <div class='grid__item'>
        ...
    </div>
</div>

JSX

<Grid column={2}>
    <Grid.Item>
        ...
    </Grid.Item>
    <Grid.Item>
        ...
    </Grid.Item>
</Grid>

Расстояние между ячейками

По умолчанию, сетка не имеет отступов.

| Class | Description | |---------------------------|-----------------------------| | .grid_size_xxs | 5px. | | .grid_size_xs | 10px. | | .grid_size_s | 15px. | | .grid_size_m | 20px. | | .grid_size_l | 25px. | | .grid_size_xl | 30px. | | .grid_size_xxl | 35px. | | .grid_size_xxxl | 40px. |

HTML

<div class='grid grid_size_xl'>
    <div class='grid__item'>
        ...
    </div>
    <div class='grid__item'>
        ...
    </div>
</div>

JSX

<Grid size='xl'>
    <Grid.Item>
        ...
    </Grid.Item>
    <Grid.Item>
        ...
    </Grid.Item>
</Grid>

Направление ячеек

Устанавливает главную ось main-axis, определяя тем самым направление для элементов сетки. По умолчанию, слева направо.

| Class | Description | |-----------------------|-----------------------------| | .grid_direction_row | Cлева направо для ltr, справа налево для rtl | | .grid_direction_row-reverse | Cправа налево для ltr, слева направо для rtl | | .grid_direction_column | Aналогично row сверху вниз | | .grid_direction_column-reverse | Aналогично row-reverse, снизу вверх. |

HTML

<div class='grid grid_direction_row-reverse'>
    <div class='grid__item'>
        ...
    </div>
    <div class='grid__item'>
        ...
    </div>
</div>

JSX

<Grid direction='row-reverse'>
    <Grid.Item>
        ...
    </Grid.Item>
    <Grid.Item>
        ...
    </Grid.Item>
</Grid>

Перенос ячеек

В одной строке может быть много элементов. Модификатор задает правила переноса.

| Class | Description | |-----------------------------|---------------------------------------------------------| | .grid_wrap_nowrap | Элементы не переносятся | | .grid_wrap_wrap | Переносятся | | .grid_wrap_wrap-reverse | Переносятся и располагаются в обратном порядке |

HTML

<div class='grid grid_wrap_nowrap'>
    <div class='grid__item'>
        ...
    </div>
    <div class='grid__item'>
        ...
    </div>
</div>

JSX

<Grid wrap='nowrap'>
    <Grid.Item>
        ...
    </Grid.Item>
    <Grid.Item>
        ...
    </Grid.Item>
</Grid>

Вложенные сетки

Можно легко расширить макет сетки с вложенными сетками.

HTML

<div class='grid grid_column_2'>
    <div class='grid__item'>
        ...
    </div>
    <div class='grid__item'>
        <div class='grid grid_column_3'>
            <div class='grid__item'>
                ...
            </div>
            <div class='grid__item'>
                ...
            </div>
            <div class='grid__item'>
                ...
            </div>
        </div>
    </div>
</div>

JSX

<Grid column={2}>
    <Grid.Item>
        ...
    </Grid.Item>
    <Grid.Item>
        <Grid column={3}>
            <Grid.Item>
                ...
            </Grid.Item>
            <Grid.Item>
                ...
            </Grid.Item>
            <Grid.Item>
                ...
            </Grid.Item>
        </Grid>
    </Grid.Item>
</Grid>

Горизонтальное выравнивание

По умолчанию, сетка выровнена по левому краю.

| Class | Description | |---------------------------|-------------------------------| | .grid_align_left | Выравнивание по левому краю. | | .grid_align_right | Выравнивание по правому краю. | | .grid_align_center | Выравнивание по центру. | | .grid_align_justify | Выравнивание по краям. |

HTML

<div class="grid grid_align_center">
    <div class="grid__item">
        ...
    </div>
</div>

JSX

<Grid align='center'>
    <Grid.Item>
        ...
    </Grid.Item>
</Grid>

Вертикальное выравние

По умолчанию, сетка выровнена к верху.

| Class | Description | |-----------------------------|-------------------------| | .grid_valign_middle | Выравнивание по центру. | | .grid_valign_bottom | Выравнивание к низу. | | .grid_valign_justify | Выравнивание к краям. | | .grid_valign_baseline | Выравнивает базовую линию ячейки с базовой линией первой текстовой строки. |

HTML

<div class='grid grid_valign_justify'>
    <div class='grid__item'>
        ...
    </div>
    <div class='grid__item'>
        ...
    </div>
</div>

JSX

<Grid valign='justify'>
    <Grid.Item>
        ...
    </Grid.Item>
    <Grid.Item>
        ...
    </Grid.Item>
</Grid>

Ширина ячейки

Ширина ячейки определяется для элемента секти .grid__item.

| Class | Description | |----------------------------------------|------------------------------------------------------| | .grid__item_width-1-1 | Заполняет 100% доступной ширины. | | .grid__item_width-1-2 | Деление на две половины, 50%. | | .grid__item_width-1-3 до .grid__item_width-2-3 | Деление на три части. | | .grid__item_width-1-4 до .grid__item_width-3-4 | Деление на четыре части. | | .grid__item_width-1-5 до .grid__item_width-4-5 | Деление на пять частей. | | .grid__item_width-1-6 до .grid__item_width-5-6 | Деление на шесть частей. | | ... | ... | | .grid__item_width-1-10 до .grid__item_width-9-10 | Деление на десять частей. |

Например класс .grid__item_width-5-10 будет работать точно так же как .grid__item_width-1-2.

HTML

<div class='grid'>
    <div class='grid__item grid__item_width-1-3'>
        ...
    </div>
</div>

JSX

<Grid>
    <Grid.Item width='1-3'>
        ...
    </Grid.Item>
</Grid>

Порядок ячеек

Задает порядок следования элемента сетки .grid__item.

| Class | Description | |----------------------------------------|----------------------------| | .grid__item_order-1 до .grid__item_order-10 | Целое число. |

По умолчанию все элементы будут следовать друг за другом в порядке, заданном в html.

HTML

<div class='grid'>
    <div class='grid__item grid__item_order-2'>
        ...
    </div>
    <div class='grid__item grid__item_order-1'>
        ...
    </div>
</div>

JSX

<Grid>
    <Grid.Item order={2}>
        ...
    </Grid.Item>
    <Grid.Item order={1}>
        ...
    </Grid.Item>
</Grid>