A justify-items
propriedade é uma subpropriedade do Módulo CSS Box Alignment que basicamente controla o alinhamento dos itens da grade dentro de seu escopo.
.element ( justify-items: center; )
justify-items
alinha os itens da grade ao longo do eixo da linha (em linha). Especificamente, esta propriedade permite que você defina o alinhamento de itens dentro de um contêiner de grade (não a própria grade) em uma posição específica (por exemplo start
, center
e end
) ou com um comportamento (por exemplo, auto
ou stretch
).
Quando justify-items
é usado, também define o justify-self
valor padrão para todos os itens da grade, embora isso possa ser sobrescrito no nível do filho usando a justify-self
propriedade no próprio filho.
.grid ( display: grid; justify-items: center; ) .grid-item ( justify-self: start; )
Sintaxe
justify-items: normal | stretch | | ? ( | left | right ) | legacy | legacy && ( left | right | center )
- Valor inicial:
legacy
- Aplica-se a: todos os elementos
- Herdado: não
- Valor calculado: conforme especificado
- Tipo de animação: discreto
Valores
/* Basic keyword values */ justify-items: auto; justify-items: normal; justify-items: stretch; /* Baseline alignment */ justify-items: baseline; justify-items: first baseline; justify-items: last baseline; /* Positional alignment */ justify-items: center; justify-items: start; justify-items: end; justify-items: flex-start; justify-items: flex-end; justify-items: self-start; justify-items: self-end; justify-items: left; justify-items: right; /* Overflow alignment */ /* Used as an optional second value for positional alignment */ justify-items: safe; justify-items: unsafe; /* Legacy */ justify-items: legacy center; justify-items: legacy left; justify-items: legacy right; /* Global values */ justify-items: inherit; justify-items: initial; justify-items: unset;
Valores básicos de palavras-chave
stretch
: Valor padrão. Alinha os itens para preencher toda a largura da célula do item da gradeauto
: igual ao valor dejustify-items
in parent.normal
: Embora possamos verjustify-items
usado com mais frequência em um layout de grade, é tecnicamente para qualquer alinhamento de caixa enormal
significa coisas diferentes em diferentes contextos de layout, incluindo:- layouts de nível de bloco (
start
) - layouts de grade
stretch
- flexbox (ignorado)
- células da tabela (ignorado)
- layouts absolutamente posicionados (
start
) - caixas absolutamente posicionadas (
stretch
) - substituiu caixas absolutamente posicionadas (
start
)
- layouts de nível de bloco (
.container ( justify-items: stretch; )
Valores de alinhamento de linha de base
Isso alinha a linha de base de alinhamento da primeira ou última linha de base definida com a linha de base correspondente de seu contexto de alinhamento.
.container ( justify-items: baseline; )
- O alinhamento de fallback para
first baseline
ésafe start
. - O alinhamento de fallback para
last baseline
ésafe end
. baseline
corresponde afirst baseline
quando usado sozinho
Na demonstração abaixo (melhor visualizada no Firefox), vemos como os elementos se alinham com a linha de base de uma grade baseada no eixo principal.
Valores de alinhamento posicional
start
: Alinha os itens com a borda inicial do contêiner de alinhamentoend
: Alinha os itens com o contêiner de alinhamento da borda finalcenter
: Alinha os itens no centro do contêiner de alinhamentoleft
: Alinha os itens à esquerda do contêiner de alinhamentoright
: Alinha os itens à direita do contêiner de alinhamentoself-start
: Alinha os itens no início de cada célula do item da gradeself-end
: Alinha itens no final de cada célula de item de grade
.container ( justify-items: )
.container ( justify-items: )
.container ( justify-items: center; )
Valores de alinhamento de estouro
A propriedade overflow determina como exibirá o conteúdo da grade quando o conteúdo exceder os limites da grade. Portanto, quando o conteúdo é maior do que o contêiner de alinhamento, isso resultará em estouro, o que pode levar à perda de dados. Para evitar isso, podemos usar o safe
valor que informa ao navegador para alterar o alinhamento para que não haja perda de dados.
safe
: Se um item estourar o recipiente de alinhamento, ostart
modo é usado.unsafe
: O valor de alinhamento é mantido como está, independentemente do tamanho do item ou do recipiente de alinhamento.
Valores legados
legacy
: Quando usada com uma palavra-chave direcional (por exemploright
,left
oucenter
), essa palavra-chave é passada para os descendentes herdarem. Mas se o descendente declarajustify-self: auto;
entãolegacy
é ignorado, mas ainda respeita a palavra-chave direcional. O valor é calculado para o valor herdado se nenhuma palavra-chave direcional for fornecida. Caso contrário, ele calculanormal
.
Demo
Mais Informações
- Módulo de alinhamento de caixa CSS nível 3 (rascunho de trabalho)
- Um guia completo para grade
- Um guia completo para Flexbox
Suporte de navegador
O suporte do navegador justify-items
funciona em toda a gama, pois é usado em vários contextos de layout, como grade, flexbox, células de tabela. Mas, em geral, se grid e flexbox são suportados, então você pode assumir que justify-items
também.
Layout de grade
IE | Beira | Raposa de fogo | cromada | Safári | Ópera |
---|---|---|---|---|---|
Não | 16+ | Mais de 45 | 57+ | 10,1+ | 44+ |
Android Chrome | Android Firefox | Navegador Android | iOS Safari | Opera Mobile |
---|---|---|---|---|
81+ | Mais de 45 | 81+ | 10,1+ | 59+ |
Layout flexível
IE | Beira | Raposa de fogo | cromada | Safári | Ópera |
---|---|---|---|---|---|
Não | 12+ | 20+ | 52+ | 9+ | 12,1+ |
Android Chrome | Android Firefox | Navegador Android | iOS Safari | Opera Mobile |
---|---|---|---|---|
87+ | 83+ | 81+ | 9+ | 12,1+ |
Propriedades relacionadas
Almanaque em 27 de outubro de 2019alinhar-itens
Geoff Graham