2
respostas

Como centralizar o conteudo da pagina verticalmente

Boa tarde comunidade, estava praticando HTML e CSS para construção de um portfólio. Porém tive uma duvida em relação a posicionar o conteúdo da pagina verticalmente. Sendo que eu precisava que esse estivesse centralizado verticalmente e horizontalmente. Tentei procurar em algumas paginas de CSS porém nao consegui solucionar esse problema. Segue o código abaixo: Insira aqui a descrição dessa imagem para ajudar na acessibilidade

<title>Frontend Mentor | Preview card de produto</title>

<style>
body,html{
  height: 100%;
  background: hsl(30, 38%, 92%);
}

  .flex-box {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .content-box {

    background-color: white;
    text-align: center;
    width: 500px;
  }
  .content-box .tipo{
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    color: hsl(228, 12%, 48%);
  }
  .content-box .nome{
    font-family: 'Fraunces', serif;
    font-size: 30px;
    font-weight: 700;
    text-align: left;
  }
  .content-box .descricao{
    font-family: 'Montserrat', sans-serif;
    font-weight: 500;
    color: hsl(228, 12%, 48%);
    font-size: 14px;
  }
  .imagem_principal{
    float: left;
    width: 45%;
  }

  .atribuicao { font-size: 11px; text-align: center; text-align: bottom; }
  .atribuicao a { color: hsl(228, 45%, 44%); }


</style>
2 respostas

Boa noite Jovem!,

É sempre importante além do CSS compartilhar com a gente o seu código HTML para que possamos ter uma noção de como estão atribuidos seus elementos pai e filhos... Acredito que se vc der uma olhada sobre Display Flex e atribuir o flex-direction Row ou Column já vai resolver o seu problema, mas volto a lembrar que tudo depende da atribuição que vc fez das suas classes nos elementos HTML...

Espero ter ajudado, e se não conseguir e puder mandar aí seu HTML talvez consiga te ajudar melhor..

Bom dia Vitor!

Muito obrigado pela contribuição, eu havia tentado enviar também o código html mas o forum nao aceitou. Fica abaixo o meu código HTML.(Eu consegui resolver o problema e centralizar a imagem porém foi meio que na gambiarra usando o padding-top, ai quando eu dou zoom ou tiro zoom da pagina ela fica desproporcional)

<!DOCTYPE html>
<html lang="pt-br">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="reset.css">
    <link rel="icon" type="image/png" sizes="32x32" href="./images/favicon-32x32.png">

    <title>Frontend Mentor | Preview card de produto</title>

  </head>
  <body>
    <main>
          <div class="flex-box">
          <div class="content-box">
          <img src="images/image-product-desktop.jpg" class="imagem_principal" alt="Perfume Gabrielle Essence Eau de Parfum">
          <h1 class="tipo">P E R F U M E</h1>
          <h2 class="nome">Gabrielle<br>Essence Eau De<br>Parfum</h2>

          <p class="descricao">A floral, solar and voluptuous<br>interpretation composed by<br>Olivier Polge, 
          Perfumer-Creator<br>for the House of CHANEL.</p>
          <div class="precos">
          <p class="preco_venda">$149.99</p>
          <p class="preco_desconto">$169.99</p>
          </div>
          <button type="button" onclick="alert('Voce adicionou o produto ao carrinho')"><img src="carrinho_compras.png" height ="25" width="25"><p>Add to cart</p></button>
          </div>
          </div>

    </main>
    <footer>
        <div class="atribuicao">
          <p>Challenge by <a href="https://www.frontendmentor.io?ref=challenge" target="_blank">Frontend Mentor</a>.
             Coded by <a href="https://www.linkedin.com/in/felipe-faria-221523218/">Felipe Faria</a>.
          </p>
        </div>
    </footer>
  </body>
</html>