"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Eu gosto de mover, mover (parte 2)

Eu gosto de mover, mover (parte 2)

Publicado em 2024-08-26
Navegar:228

Bem vindo de volta! Se você acompanha semana após semana, deve ter notado que essa série teve uma pequena pausa! Se você está acompanhando, sinto muito!

Alguns dos meus trabalhos em um projeto pessoal ocuparam uma parte significativa da minha atenção, além disso, acabei de me casar, então vou usar isso como desculpa. Se você quiser ver no que estou trabalhando, confira Build In Public: Roast, série que documenta meu processo desde o conceito até a implantação de um aplicativo que rastreia seus assados ​​​​caseiros.

Tudo bem, tudo bem. Pare de se autopromover, vamos voltar a mover nossas caixas pela tela!

Obtenha seu CodePen!

Assim como na primeira parte, você poderá acompanhar seu modelo CodePen! Se você ainda não leu a Parte 1, confira aqui. E se precisar de um novo modelo, clique aqui.

Qual é a propriedade de exibição?

Com as propriedades de exibição e posição, pode parecer que elas estão afetando a mesma coisa: onde algo aparece na página da web. Mas eles têm uma diferença sutil. As propriedades de posicionamento controlam como um elemento é posicionado no documento que o contém. Seja no fluxo normal, em relação a outros elementos, ou ignorando tudo!

Display é diferente porque afeta a

forma como o layout é interpretado: o tipo de exibição. A propriedade display para CSS é um pouco complicada no início, porque ela não apenas define o tipo de exibição do elemento ao qual é aplicado (um tipo de exibição externo), mas também define os comportamentos de exibição dos elementos contidos na propriedade do elemento é aplicado a (um tipo de exibição interno).

Inline vs. Bloco

A maioria dos elementos que usamos até agora tem um tipo de bloco de exibição externa padrão. Isso significa que nenhum outro elemento ocupará o mesmo espaço vertical que esse elemento; efetivamente, qualquer novo elemento adicionado criará uma "nova linha".

Nem todos os elementos são assim. Por exemplo, as tags
são padronizadas como um bloco, enquanto as tags não. Em vez disso, eles estão embutidos, o que significa que não criam uma nova linha!

Bem, independente dos padrões do elemento, você pode alterar esta propriedade definindo:


exibição: bloquear exibição: bloco embutido
display: block
display: inline-block
Agora em sua caneta de código, altere o conjunto de regras .box para fazer com que todas as caixas apareçam lado a lado.

I Like to Move It, Move It (Part 2)

Flexbox e grade

Quanto aos tipos de display interno, temos mais algumas opções sobre como posicionar as coisas. Podemos transformar nosso elemento em um flexbox ou grade, o que afetará a disposição de seus filhos.

Visor: Flexível

Cada um desses conceitos merece uma postagem inteira própria, mas basicamente, uma caixa flexível posicionará de forma "flexível" os elementos contidos em um elemento pai inline. O flexbox é mais adaptável a diferentes tamanhos de tela, pois coloca os itens em relação uns aos outros e ao elemento que os contém, em vez de em relação à janela.

Para ver isso em ação, dê uma olhada no conjunto de regras .frame no Codepen.

Descomente a seguinte linha de código:


exibição: flexível;
display: block
display: inline-block

I Like to Move It, Move It (Part 2)

É muito semelhante a ter quatro blocos embutidos, certo? Por padrão, um flex container justifica seus itens para o início do flexbox, ou para a esquerda, mas isso também pode ser alterado!

Abaixo da declaração do flexbox, adicione isto:


justificar-conteúdo: centro;
display: block
display: inline-block
E agora devemos ver todas as caixas aparecendo no meio da tela!

I Like to Move It, Move It (Part 2)

Mas, e se não quisermos que eles fiquem presos no topo assim? Vamos adicionar também:


align-items: centro;
display: block
display: inline-block

I Like to Move It, Move It (Part 2)

Ótimo!

Exibição: Grade

Nota: Antes de prosseguir no CodePen, certifique-se de comentar ou remover as linhas que contêm display: flex e as propriedades justificar-content ou alinhar-items que você adicionou.

Além do flexbox, também temos a opção de transformar todo o nosso elemento em uma grade, onde podemos colocar itens!

Não entrarei muito em detalhes deste código aqui, mas saiba que isso é possível declarando o elemento como uma grade, fornecendo um modelo de grade e depois colocando os itens dentro da grade!

Remova o comentário das seguintes linhas no conjunto de regras .frame!


exibição: grade; modelo de grade: 1fr 1fr / 1fr 1fr; alinhar itens: centro; justificar itens: centro;
display: block
display: inline-block
Agora, você deve ver cada uma das caixas posicionadas no centro de um quadrante do quadro!

I Like to Move It, Move It (Part 2)

Use suas novas habilidades!

Tal como no último artigo, aqui está uma série de desafios.

Você desejará excluir ou comentar novamente as linhas de código que criam o layout da grade antes de tentar!

Desafio nº 1: Pesquise no MDN a propriedade justify-content correta para exibir cada um dos blocos uniformemente no plano horizontal sem tocar nas laterais e no centro verticalmente, conforme ilustrado abaixo.

I Like to Move It, Move It (Part 2)

Desafio #2: Ainda em um flex container, veja se você consegue agrupar todas as caixas e colocá-las no canto inferior direito! (Quais propriedades você terá que ajustar para isso?)

I Like to Move It, Move It (Part 2)

Desafio nº 3: Você consegue encontrar uma propriedade flex que inverta a ordem de exibição dos elementos?

I Like to Move It, Move It (Part 2)

Parabéns por completar esses desafios! Até a próxima semana para mais HTML e CSS!

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/nmiller15/i-like-to-move-it-move-it-part-2-4p12?1 Se houver alguma violação, entre em contato com [email protected] para excluí-lo
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3