Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Por quê "margin: 0 auto" não funciona em elementos display: inline-block?

Estava fazendo as aulas e reparei que margin: 0 auto só funciona em elementos block. E no caso de um elemento display-block, teria que aplicar um text-align: center no elemento pai dele.

Mas não consegui entender o porquê disso. Ao meu ver, o único que não deveria aceitar "margin: 0 auto" seria o elemento inline.

1 resposta
solução!

Oi Victor, tudo certo?

Os elementos com display: block; ocupam todo o espaço disponível da página. Portanto, quando você coloca o margin: 0 auto; ele se ajusta no centro da horizontal justamente por esse comportamento que ele ocupa o espaço todo da tela.

Com o elemento display: inline-block, só por você já declará-lo dessa maneira (sem declarar o width por enquanto), ele já se torna-se inline, deixando de lado o seu comportamento do tipo block. E agora, como ele ocupa apenas o seu tamanho total, ele não tem mais uma referência de tamanho na horizontal. Antes ele tinha referência da página como um todo, já que ocupava todo o tamanho da página disponível.

Conseguiu compreender melhor? Fico à disposição! Abraços =)