Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

214
Visualizações
¿Cómo hacer una caja flexible con límite de 2 elementos por fila?

Necesito hacer una tabla que contenga hasta 4 divs. Pero los divs en esa tabla siempre deben usar el máximo de espacio disponible. Y una fila no debe contener más de 2 divs. Por ejemplo, si la tabla contiene 2 divs, debería verse así ingrese la descripción de la imagen aquí

Si la tabla tiene 3 divs, así: ingrese la descripción de la imagen aquí

Y si contiene 4 entonces debería verse así

ingrese la descripción de la imagen aquí

Para lograrlo escribí este código:

 <div style={{ height: '58vh', border: '1px solid #d9d9d9', borderRadius: '0px 0px 2px 2px', display: 'flex', flexDirection: 'row', flexWrap: 'wrap', }} > <div style={{background:'red', flex: 'auto', margin: '5px'}} <div style={{background:'green', flex: 'auto', margin: '5px'}} <div style={{background:'blue', flex: 'auto', margin: '5px'}} <div style={{background:'pink', flex: 'auto', margin: '5px'}} </div>

Pero me falta algo aquí. Para 1 div y para 2 div funciona según lo planeado. Pero para más... Este es mi resultado para 3 divs ingrese la descripción de la imagen aquí y por 4 divisiones ingrese la descripción de la imagen aquí ¿Alguien puede aconsejarme, por favor, qué debo cambiar en este código?

PD. Por favor, no juzgues mis cuadrados desigualmente dibujados :)

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

 .container { display: flex; flex-wrap: wrap; } .inner { flex-basis: 50%; flex-grow: 1; } .inner:nth-of-type(1) { background: red; } .inner:nth-of-type(2) { background: gold; } .inner:nth-of-type(3) { background: green; } .inner:nth-of-type(4) { background: blue; }
 <div class="container"> <div class="inner">one</div> <div class="inner">two</div> <div class="inner">three</div> <div class="inner">four</div> </div>

Utilicé los siguientes pasos para lograr su resultado.

  1. Haz que el contenedor que contiene las cajas internas sea flex .
  2. Dale al contenedor flex-wrap: wrap manera que las cajas internas que no tienen lugar en la misma línea, pasen a la siguiente línea.
  3. Dar flex-basis: 50% a las cajas interiores para que ocupen el 50% del espacio disponible.
  4. Dale a las cajas internas flex-grow: 1 para que si a la última caja le queda espacio, lo ocupe todo.

Referencias:

  • Caja flexible
  • envoltura flexible
  • base flexible
  • crecimiento flexible
  • (Extra) flexionable

PD: Intenta comentar el cuarto cuadro interior para que el tercer cuadro ocupe todo el espacio horizontal.

about 4 years ago · Juan Pablo Isaza Relatório

0

¿Qué quieres decir con usar Grid para esto?

ejemplo:

 display: grid; grid-template-columns: 1fr 1fr; grid-gap: 10px;

aquí está la guía para Grid: https://css-tricks.com/snippets/css/complete-guide-grid/

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda