1
resposta

A única forma de centralizar o conteúdo "Hip Hop" seria dando o texto uma nova <tag>?

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

body {
    background: linear-gradient(180deg, #154580 0%, #041833 100%);
    background-repeat: no-repeat;
    height: 100vh;
  }

  .container{
    position: absolute;
    left: 176px;
    top: 98px;
    border-radius: 10px;
    background: #C4C4C433;
    padding: 1rem;
  }

  .grid-container {
     display: grid;
     grid-template-columns: 1fr 1fr 1fr;
     gap: 8px;
  }

  img {
    display: flex;
    margin: auto;
  }

  h1 {
    font-family: Open Sans, "sans-serif";
    font-size: 24px;
    font-weight: 900;
    line-height: 33px;
    letter-spacing: 0em;
    text-align: center;
    color: white;
  }

  .grid-item {
    font-family: 'Nunito', sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: 0em;
    text-align: center;
    color: white;
    background: #041833;
    border-radius: 0.5rem;
    padding: 0.5rem;
  }

  .item3 {
    display: flex;
    align-items: center;
    grid-row: span 2;
    background: #84EEC1;
    color: #041833;
  }

  .item4 {
    grid-column: span 2;
  }

  .item5 {
    grid-column: span 2;
  }
1 resposta

Olá Ana, tudo bem?

Primeiramente peço desculpas pela demora em responder.

Você se refere a centralização vertical do texto Hip Hop, correto?

Como se trata de estilo, é algo que podemos resolver com CSS!

Existem algumas maneiras de solucionar, como por exemplo utilizando o display: flex e align-items: center no .item3, como fez. Porém, trazer todo um contexto do container flex apenas para centrar ele mesmo, acredito que não seja uma boa prática, visto que o propósito do flex é outro.

Uma outra maneira que daria certo seria ficar aplicando um padding ou no topo do elemento, mas para isso precisaríamos ficar chutando um valor até conseguir centralizar, também não é uma boa prática.

E uma terceira forma, que é a quer recomendo, seria utilizar uma propriedade que atua justamente nesse propósito de centralizar verticalmente um elemento. Aplicando a propriedade line-height ou altura da linha no .item3 com o mesmo valor da altura desse elemento, na ferramenta do desenvolvedor tenho a informação que a altura do .item3 é 84px ou 5.25rem. O código fica: line-height: 5.25rem.

Espero ter ajudado, em caso de dúvidas fique a vontade para perguntar.

Abraços e bons estudos!