• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Pruebas Online
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

390
Vistas
CSS HTML: la altura de DIV llena el espacio restante

Así que tengo un diseño como este:

 div { border: 1px solid }
 <div id="col_1" style="float:left;width:150px;">1</div> <div id="col_2" style="float:left;width:100px;">2</div> <div id="col_3" style="float:left;width:<REMAINING_WIDTH>;">3</div>

col_1 y col_2 ocupan una cantidad fija de espacio. Quiero que la tercera columna ocupe el resto. ¿Cuál es la mejor manera de lograr esto?

almost 3 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Podría hacer algo loco, abandonar el javascript y las cosas CSS3 que no están listas para el horario de máxima audiencia y usar el posicionamiento absoluto.

Ver este jsfiddle . Puntos de bonificación por comportarse bien a través de los cambios de tamaño del navegador, también.

 #col_1 { position: absolute; top: 0px; bottom: 0px; width: 100px; background-color: #eee; } #col_2 { position: absolute; top: 0px; bottom: 0px; width: 150px; left: 100px; background-color: #ccd; } #col_3 { position: absolute; top: 0px; bottom: 0px; left: 250px; right: 0px; background-color: #cdc; }
 <div id='col_1'>Column 1</div> <div id='col_2'>Column 2</div> <div id='col_3'> Column 3 </div>

almost 3 years ago · Santiago Trujillo Denunciar

0

Se necesita Javascript para esto. Si desea que los 3 divs llenen el espacio de la ventana (100%), entonces necesita usar javascript para detectar cuánto espacio queda y asignar la altura de col_3 en consecuencia. Con jQuery puedes hacer

 var one = $('#col_1').height(), two = $('#col_2').height(), remaining_height = parseInt($(window).height() - one - two); $('#col_3').height(remaining_height);
almost 3 years ago · Santiago Trujillo Denunciar

0

Ya ha aceptado una respuesta, pero puede consultar CSS Flexbox, que está diseñado para resolver este problema exacto sin depender de los trucos "float:left". Funciona en Chrome, Safari y FF (con los prefijos -webkit y -moz). No en IE todavía.

Aquí hay algunos enlaces rápidos:

http://hacks.mozilla.org/2010/04/the-css-3-flexible-box-model/

http://www.terrainformatica.com/w3/flex-layout/flex-layout.htm

http://www.w3.org/TR/css3-flexbox/

almost 3 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda