Свойство CSS justify-items
Свойство justify-items задаёт значение justify-self по умолчанию для всех дочерних блоков, предоставляя им общий способ выравнивания каждого блока вдоль соответствующей оси. В отличие от justify-self, которое применяется к отдельным элементам, justify-items действует на весь контейнер.
Свойство justify-items в основном используется в макетах Grid, но также применяется к:
- абсолютно позиционированным элементам
- контейнерам grid
Примечание:
justify-itemsв первую очередь влияет на контейнеры grid и абсолютно позиционированные элементы. В макетах flexbox это свойство игнорируется.
| Начальное значение | auto |
|---|---|
| Применяется к | Контейнерам grid и абсолютно позиционированным элементам. |
| Наследуется | Нет. |
| Анимируемое | Нет. |
| Версия | CSS3 |
| Синтаксис DOM | object.style.justifyItems = "start"; |
Синтаксис
Значения CSS justify-items
justify-items: auto | normal | start | end | flex-start | flex-end | self-start | self-end | center | left | right | baseline | first-baseline | last-baseline | stretch | safe | unsafe | legacy | initial | inherit;Пример: justify-items со значением "start"
Пример кода CSS justify-items
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
<style>
#example {
display: grid;
grid-template-columns: 1fr;
grid-template-rows: 1fr 1fr 1fr;
gap: 5px;
justify-items: start;
background-color: #cccccc;
}
#example > div {
padding: 10px;
font-size: 20px;
color: white;
width: 100px;
height: 50px;
}
.one {
background-color: #1c87c9;
}
.two {
background-color: #8ebf42;
}
.three {
background-color: #666666;
}
</style>
</head>
<body>
<h2>Justify-items property example</h2>
<div id="example">
<div class="one">1</div>
<div class="two">2</div>
<div class="three">3</div>
</div>
</body>
</html>Результат

Пример: justify-items со значением "center"
Пример justify-items center
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
<style>
#example {
display: grid;
grid-template-columns: 1fr;
grid-template-rows: 1fr 1fr 1fr;
gap: 5px;
justify-items: center;
background-color: #cccccc;
}
#example > div {
padding: 10px;
font-size: 20px;
color: white;
width: 100px;
height: 50px;
}
.one {
background-color: #1c87c9;
}
.two {
background-color: #8ebf42;
}
.three {
background-color: #666666;
}
</style>
</head>
<body>
<h2>Justify-items property example</h2>
<div id="example">
<div class="one">1</div>
<div class="two">2</div>
<div class="three">3</div>
</div>
</body>
</html>Пример: justify-items со значением "first-baseline"
Пример свойства justify-items со значением "first-baseline":
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
<style>
.container {
display: grid;
padding-top: 10px;
height: 250px;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: auto;
background: #ccc;
justify-items: first-baseline;
}
.item {
width: 50%;
height: 50%;
text-align: center;
}
.item1 {
background: red;
}
.item2 {
background: blue;
}
.item3 {
background: green;
}
</style>
</head>
<body>
<h2>Justify-items property example</h2>
<div class="container">
<div class="item1 item">1</div>
<div class="item2 item">2</div>
<div class="item3 item">3</div>
</div>
</body>
</html>Пример: justify-items со значением "self-end"
Пример свойства justify-items со значением "self-end":
<!DOCTYPE html>
<html>
<head>
<title>Title of the document</title>
<style>
#example {
display: grid;
grid-template-columns: 1fr;
grid-template-rows: 1fr 1fr 1fr;
gap: 5px;
justify-items: self-end;
background-color: #cccccc;
}
#example > div {
padding: 10px;
font-size: 20px;
color: white;
width: 100px;
height: 50px;
}
.one {
background-color: #1c87c9;
}
.two {
background-color: #8ebf42;
}
.three {
background-color: #666666;
}
</style>
</head>
<body>
<h2>Justify-items property example</h2>
<div id="example">
<div class="one">1</div>
<div class="two">2</div>
<div class="three">3</div>
</div>
</body>
</html>Значения
| Значение | Описание |
|---|---|
| auto | Если у блока нет родителя или он абсолютно позиционирован, значение auto соответствует normal. |
| normal | Эффект зависит от режима макета: <br>• Блочные макеты: ведёт себя как start. <br>• Абсолютно позиционированные макеты: ведёт себя как start для заменяемых элементов и как stretch для остальных. <br>• Ячейки таблицы: игнорируется. <br>• Flexbox: игнорируется. <br>• Grid-макеты: ведёт себя как stretch, кроме элементов с соотношением сторон или внутренним размером, где ведёт себя как start. |
| start | Все элементы выравниваются друг относительно друга по начальному (левому) краю контейнера. |
| end | Все элементы выравниваются друг относительно друга по конечному (правому) краю контейнера. |
| flex-start | Элементы размещаются в начале контейнера. |
| flex-end | Элементы размещаются в конце контейнера. |
| self-start | Элемент может разместить себя у края контейнера, исходя из своей начальной стороны. |
| self-end | Элемент может разместить себя у края контейнера, исходя из своей конечной стороны. |
| center | Элементы располагаются рядом друг с другом по центру контейнера. |
| left | Элементы располагаются рядом друг с другом у левой стороны контейнера. Если ось свойства не параллельна встроенной оси, это значение ведёт себя как end. |
| right | Элементы располагаются рядом друг с другом у правой стороны контейнера. Если ось свойства не параллельна встроенной оси, это значение ведёт себя как start. |
| baseline | Выравнивает все элементы внутри группы, сопоставляя их базовые линии выравнивания. |
| first-baseline | Выравнивает все элементы внутри группы, сопоставляя их первые базовые линии выравнивания. |
| last-baseline | Выравнивает все элементы внутри группы, сопоставляя их последние базовые линии выравнивания. |
| stretch | Растягивает элемент, чтобы он заполнил контейнер вдоль встроенной/главной оси. |
| safe | Если размер элемента выходит за пределы контейнера выравнивания, элемент выравнивается так, как если бы режим выравнивания был start. |
| unsafe | Независимо от размера элемента и контейнера выравнивания, значение выравнивания применяется. |
| legacy | Устаревшее ключевое слово для обратной совместимости. Соотносится с flex-start, flex-end или center в зависимости от режима макета. Не влияет на наследование. |
| initial | Заставляет свойство использовать значение по умолчанию. |
| inherit | Наследует свойство от родительского элемента. |
Практика
Что делает свойство CSS 'justify-items'?