📐 Dica CSS: sintaxes para padding e margin
Hoje vou passar uma dica rápida de como ler a sintaxe dos valores de margin e padding, o que pode parecer confuso no começo, mas após um tempo fica fácil ler.
Essencialmente a sintaxe usada no valor de margin é a mesma de padding, mas são propriedades distintas: margin adiciona margem ao seu elemento, criando um espaço entre ele e os demais elementos, quando seu display != inline. Para padding, ele adiciona preenchimento no seu elemento, criando espaço entre a borda do elemento e seu conteúdo.
Sintaxe com 4 valores
Agora, vamos ler isso:
div {
margin: 10px auto 10px auto;
}
Podemos ver que acima temos um valor com 4 tokens, sendo eles 10px, auto, 10px e auto novamente. A propriedade margin funciona como um shorthand para as demais margens individuais, sendo equivalente à:
div {
margin-top: 10px;
margin-right: auto;
margin-bottom: 10px;
margin-left: auto;
}
Mas como ler 10px auto 10px auto?
Vamos usar o relógio!

É só você usar o sentido horário para ler. Sempre é um shorthand para a sintaxe:
div {
margin: top right bottom left;
}
Então você pode começar com top ao meio dia, e ir avançado o tempo até às 9h ser left.

Mas isso é para quando você vai usar a sintaxe com 4 tokens. Essa regra se aplica também ao padding.
Sintaxe com 2 valores
É um pouco mais simples. Na matemática, estamos acostumados com as coordenadas x, y, não é? No CSS, tiveram que beber muito para colocarem que a maioria das coisas são y, x, inclusive para as propriedades margin e padding.
Então, se tivermos:
div {
margin: 8px 10px;
}
É essencialmente a mesma coisa de:
div {
margin: 8px 10px 8px 10px;
/* ou */
margin-top: 8px;
margin-bottom: 8px;
margin-left: 10px;
margin-right: 10px;
/* ou */
margin-block: 8px;
margin-inline: 10px;
}
Isso porque temos no primeiro valor a distância vertical margin-block e no segundo a distância horizontal margin-inline. No começo demora um pouco para acostumar porque sempre pensamos na distância horizontal como o primeiro valor, porque é aceitável na matemática assim. Mas CSS é bom demais para seguir esse padrão aceito mundialmente.
Sintaxe com 1 valor
Esse é mais simples ainda, juro! Ao definir:
div {
margin: 10px;
}
Você tem essencialmente 10px de distância em todos os eixos, o que é equivalente à:
div {
margin: 10px 10px 10px 10px;
}
E você ainda pode sobrecarregar eixos individuais ao definir para todos:
div {
margin: 10px;
margin-bottom: 40px; /* todos os eixos terão 10px de distância, exceto o
de baixo, que será 40px */
}
Essa é a dica de CSS de hoje. Espero trazer mais no futuro que sejam úteis para vocês. Comente o que achou e se tem mais alguma dica para colaborar 👇