--- title: align-items slug: Web/CSS/align-items tags: - CSS - CSS Flexible Boxes - CSS Propriedade - Referencia translation_of: Web/CSS/align-items ---
A propriedade CSS align-items
estabelece o valor {{cssxref("align-self")}} em todos filhos diretos como um grupo. A propriedade align-self estabelece o alinhamento de um certo item dentro do bloco que o contém. Em Flexbox ele controla o alinhamento dos itens em {{glossary("Cross Axis")}}, enquanto que no Grid Layout, controla o alinhamento dos itens no Eixo de Bloco dentro de sua grid area.
O exemplo interativo abaixo demonstra alguns dos valores para align-items
usando grid layout.
/* Palavras-chave básicas */ align-items: normal; align-items: stretch; /* Posicionamento do alinhamento */ /* align-items não recebe valores left e right */ align-items: center; /* Itens posicionados ao redor do centro */ align-items: start; /* Posiciona itens a partir do início */ align-items: end; /* Posiciona itens a partir do fim */ align-items: flex-start; /* Posiciona itens-flex a partir do início */ align-items: flex-end; /* Posiciona itens-flex a partir do fim */ align-items: self-start; align-items: self-end; /* Alinhamento da baseline */ align-items: baseline; align-items: first baseline; align-items: last baseline; /* Overflow alinhamento (apenas para alinhamento de posição) */ align-items: safe center; align-items: unsafe center; /* Valores globais */ align-items: inherit; align-items: initial; align-items: unset;
normal
start
em replaced de caixas absolutamente posicionadas, e como stretch
em all others de caixas absolutamente posicionadas.stretch
.stretch
.stretch
, exceto para caixas com um aspect ratio ou tamanhos intrínsecos, onde se comporta como start
.flex-start
flex-end
center
start
end
self-start
self-end
baseline
first baseline
last baseline
stretch
safe
start
.unsafe
#container { height:200px; width: 240px; align-items: center; /* Pode ser mudado na amostra ao vivo */ background-color: #8c8c8c; } .flex { display: flex; flex-wrap: wrap; } .grid { display: grid; grid-template-columns: repeat(auto-fill, 50px); } div > div { box-sizing: border-box; border: 2px solid #8c8c8c; width: 50px; display: flex; align-items: center; justify-content: center; } #item1 { background-color: #8cffa0; min-height: 30px; } #item2 { background-color: #a0c8ff; min-height: 50px; } #item3 { background-color: #ffa08c; min-height: 40px; } #item4 { background-color: #ffff8c; min-height: 60px; } #item5 { background-color: #ff8cff; min-height: 70px; } #item6 { background-color: #8cffff; min-height: 50px; font-size: 30px; } select { font-size: 16px; } .row { margin-top: 10px; }
<div id="container" class="flex"> <div id="item1">1</div> <div id="item2">2</div> <div id="item3">3</div> <div id="item4">4</div> <div id="item5">5</div> <div id="item6">6</div> </div> <div class="row"> <label for="display">display: </label> <select id="display"> <option value="flex">flex</option> <option value="grid">grid</option> </select> </div> <div class="row"> <label for="values">align-items: </label> <select id="values"> <option value="normal">normal</option> <option value="flex-start">flex-start</option> <option value="flex-end">flex-end</option> <option value="center" selected>center</option> <option value="baseline">baseline</option> <option value="stretch">stretch</option> <option value="start">start</option> <option value="end">end</option> <option value="self-start">self-start</option> <option value="self-end">self-end</option> <option value="left">left</option> <option value="right">right</option> <option value="first baseline">first baseline</option> <option value="last baseline">last baseline</option> <option value="safe center">safe center</option> <option value="unsafe center">unsafe center</option> <option value="safe right">safe right</option> <option value="unsafe right">unsafe right</option> <option value="safe end">safe end</option> <option value="unsafe end">unsafe end</option> <option value="safe self-end">safe self-end</option> <option value="unsafe self-end">unsafe self-end</option> <option value="safe flex-end">safe flex-end</option> <option value="unsafe flex-end">unsafe flex-end</option> </select> </div>
var values = document.getElementById('values'); var display = document.getElementById('display'); var container = document.getElementById('container'); values.addEventListener('change', function (evt) { container.style.alignItems = evt.target.value; }); display.addEventListener('change', function (evt) { container.className = evt.target.value; });
{{EmbedLiveSample("Example", "260px", "290px")}}
Especificação | Status | Comentário |
---|---|---|
{{SpecName("CSS3 Box Alignment", "#propdef-align-items", "align-items")}} | {{Spec2("CSS3 Box Alignment")}} | Atualização para últimas definições de sintaxe. |
{{SpecName('CSS3 Flexbox', '#propdef-align-items', 'align-items')}} | {{Spec2('CSS3 Flexbox')}} | Definição inicial |
{{cssinfo}}
{{Compat("css.properties.align-items.flex_context")}}
{{Compat("css.properties.align-items.grid_context")}}