Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Alinhar divs lado a lado

Boa noite a todxs! :D

A minha dúvida é a seguinte, estou programando um projetinho onde haverá uma seção para colocar 3 cards que funcionarão como uma nav bar, ou seja, basicamente serão 3 imagens com texto e um button para seguir para outras páginas. e a minha dor de cabeça está sendo colocar esses itens lado a lado no layout da section. Tentei fazer o seguinte:

<div id="page-wrap">
  <div id="sidebar"></div>
  <div id="other"></div>
</div>

e no código css: body{

  background-color:gray;
}
#sidebar    {
    position: absolute;
    left: -250px;
    width: 200px;
    height: 400px;
    background: red;    
}

#page-wrap  {
    position: relative;
    width: 200px;
    background: #ffffff;
    height: 400px;
    margin: 0 auto;
}

#other{
   position: relative;
    right: -250px ;
    width: 200px;
    background: #ff00ff;
    height: 400px;
    margin: 0 auto;
}

Fiz isso acima para testar visualmente, porém como citei, quero usar imagens e textos de forma agrupada. Como posso realizar isto? Conteiner?

5 respostas
solução!

Ola, sou iniciante tbm, e essas três divs que vc criou são os cardes que quer inserir na pag certo?

com isso tem que criar uma nav para deixar elas mais organizadinhas.

comecei adicionando uma nav para organizar os divs dentro dela.

<nav id="container">
        <div id="page-wrap"></div>
        <div id="sidebar"></div>
        <div id="other"></div>
    </nav>

após isso criei o id nav contendo o display flex os cards ficam um ao lado do outro.

width em % a largura se adapta ao tamanho da tela

margin auto tudo se alinha no meio do section

#container{
display: flex;
width: 70%;
margin: 0 auto; 
}

tirei as propriedades: position, left e right; inserindo o margin: 0 auto no id page-wrap

#page-wrap  {
margin: 0 auto; 
width: 200px;
height: 400px;
background: #000000;
}
#sidebar    {
margin: 0 auto; 
width: 200px;
height: 400px;
background: #ff0000;    
}
#other{
margin: 0 auto; 
width: 200px;
height: 400px;
background: #ff00ff;
}

se não gostar do alinhamento só modificar as margins das divs

Espero ter sido útil ^____^

Olá Rai!! :D Primeiramente obrigada pela dica! Eu estava tentando aplicar a tua ideia porém ainda não está da forma esperada, meus cards estão ficando alongados demais como podes ver na imagem:imagem com trechos de algumas divs

atualmente meu codigo no css ficou dessa forma:

.servicos{
  display: flex;
  width: 70%;
  margin: 0 auto; 

}

.servicos li {
  margin: 0 auto; 
  position: inline-block;
  width:  324px;
  min-height: 100px;  
  border-radius: 10px;
  overflow: hidden;
  margin:5px;
  padding: auto;

  color: #f8f4f4;
  border: 5px double #ebe84c;

}

No caso o que preciso mudar para que fique menor em altura? Coloquei o min-height ali e tentei mudar o próprio height porém o texto dos parágrafos some ao tentar.

Já tentou usar um box-sizing: border-box;?

Ola, tenta adicionar uma classe para diminuir as img dps tenta diminuir as serviços li, qualquer coisa tenta entrar em contato pelo discord RaiSilva#0980

Oi Rai, tentei adicionar e ainda assim o layout perde em responsividade, te chamei la no discord, EmsMiro#9562