Foros del Web » Creando para Internet » CSS »

Estructura con DIV de ancho automático

Estas en el tema de Estructura con DIV de ancho automático en el foro de CSS en Foros del Web. Bueno no se me ocurrió otro título la cosa es la siguiente, quiero hacer que mi página se divida en 2 columnas, la primera debe ...
  #1 (permalink)  
Antiguo 05/01/2012, 08:25
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 21 años
Puntos: 8
Estructura con DIV de ancho automático

Bueno no se me ocurrió otro título la cosa es la siguiente, quiero hacer que mi página se divida en 2 columnas, la primera debe tener un ancho fijo y colocado a la izquierda, el segundo debe llenar el resto que queda en la derecha. El primero es sencillo:
Código CSS:
Ver original
  1. div#column-menu {
  2.       width: 250px;
  3.       height: 100%;
  4.       float: left;
  5. }
  6.  
  7. div#column-contenido {
  8.       /* aquí es mi problema */
  9. }
la cosa es que la página abarcará todo el ancho del navegador, entonces no se como hacer para que el div column-contenido, llene el resto del ancho de la página.

Espero que me hayan entendido y que me puedan ayudar.

Gracias.
__________________
El aprendiz.
  #2 (permalink)  
Antiguo 05/01/2012, 08:43
Colaborador
 
Fecha de Ingreso: junio-2007
Mensajes: 5.798
Antigüedad: 16 años, 11 meses
Puntos: 539
Pues ya lo tiene. Siempre y cuando aparezca en el html despues.

A lo que tiene, añádale una altura y un fondo y vea hasta donde llega su div de contenidos
  #3 (permalink)  
Antiguo 05/01/2012, 09:11
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 21 años
Puntos: 8
Respuesta: Estructura con DIV de ancho automático

hice como dices pero me pinta todo el ancho de color que le pongo al segundo div.
Código CSS:
Ver original
  1. div#column-menu {
  2.           width: 250px;
  3.           height: 100%;
  4.           float: left;
  5.     }
  6.      
  7.     div#column-contenido {
  8.           height: 500px;
  9.           background-color: #FFF;
  10.     }
__________________
El aprendiz.
  #4 (permalink)  
Antiguo 05/01/2012, 09:16
Colaborador
 
Fecha de Ingreso: junio-2007
Mensajes: 5.798
Antigüedad: 16 años, 11 meses
Puntos: 539
Cuál es su html?
<>menú lateral<>
<>contenidos<>
O a la inversa
  #5 (permalink)  
Antiguo 05/01/2012, 09:22
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 21 años
Puntos: 8
Respuesta: Estructura con DIV de ancho automático

es:
Código HTML:
Ver original
  1. <div id = "column-menu"></div>
  2. <div id = "column-contenido"></div>
__________________
El aprendiz.
  #6 (permalink)  
Antiguo 05/01/2012, 11:22
 
Fecha de Ingreso: enero-2012
Mensajes: 21
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Estructura con DIV de ancho automático

yo lo englobaba en un div mayor, y ten en quenta que deves calcular los espacios. en horizontal si no acotas el div se va a desborar y a meter debajo quando la ventana se haga pequenya.
html:

<div id ="colum-mother">
<div id = "column-menu"></div>
<div id = "column-contenido"></div>
</div>

css:
/* CSS Document */
body{margin:0; padding:0;}
#colum-mother{
position:relative;
margin: o auto;
width:1024px; height:100%; min-height:640px;
}
#column-menu {
position:relative;float: left;
width:250px;height: 100%; min-height:640px;
background-color:#099;
}

#column-contenido {
position:relative;float: left;
width:770px;height: 100%;min-height:640px;
background-color:#C00;
}
  #7 (permalink)  
Antiguo 05/01/2012, 14:38
 
Fecha de Ingreso: mayo-2003
Ubicación: Lima
Mensajes: 967
Antigüedad: 21 años
Puntos: 8
Respuesta: Estructura con DIV de ancho automático

Claro, eso si está bien, pero yo quiero usar todo el ancho de la pantalla teniendo sólo el div column-menu con ancho fijo y el otro que ocupe el resto del espacio de la derecha y con un ancho variable para que cuando la ventana se achique el div column-menu se mantenga fijo y que el otro solo varíe el ancho y el contenido obviamente se acomodaría.

Hay forma de hacerlo con CSS, otra forma que se me ocurrió es usar tablas para hacer la estructura principal, algo asi:
Código HTML:
Ver original
  1. <table width = "100%">
  2.       <tr>
  3.             <td width = "250"><!-- Contenido de column-menu --></td>
  4.             <td><!-- Contenido de column-contenido --></td>
  5.       </tr>
Pero yo no quiero usar tablas.
__________________
El aprendiz.
  #8 (permalink)  
Antiguo 05/01/2012, 14:52
Colaborador
 
Fecha de Ingreso: junio-2007
Mensajes: 5.798
Antigüedad: 16 años, 11 meses
Puntos: 539
Respuesta: Estructura con DIV de ancho automático

De nuevo:
Si en el html aparece primero su menú sólo necesita flotarlo y darle una anchura.
El siguiente div si no lo limita declarando anchura ocupará todo el espacio sobrante. Es así por los valores y propiedades intrínsecas a cualquier elemento de bloque.
Otra cuestión es que tenga otros elementos/propiedades que lo impidan (y que nosotros desconocemos).
O quizás a lo que se refiere es a que queda un pequeño espacio libre entre sus div's y el body?
Si fuese eso, resete a Ø los margin
  #9 (permalink)  
Antiguo 06/01/2012, 02:00
 
Fecha de Ingreso: enero-2012
Mensajes: 21
Antigüedad: 12 años, 4 meses
Puntos: 0
Respuesta: Estructura con DIV de ancho automático

Prueba con esto:

Código CSS:
Ver original
  1. body{margin:0; padding:0;}
  2. #colum-mother{
  3. position:relative;
  4. margin: o auto;
  5. width:100%; height:640px;
  6. }
  7. #column-menu {
  8. position:relative;float: left;
  9. width:250px;height: 100%; min-height:640px;
  10. background-color:#099;
  11. }
  12.  
  13. #column-contenido {
  14. position:absolute;float: left; top:0; margin-left:250px;
  15. width:100%;height: 100%;
  16. background-color:#C00;
  17. }
  #10 (permalink)  
Antiguo 06/01/2012, 09:18
Colaborador
 
Fecha de Ingreso: junio-2007
Mensajes: 5.798
Antigüedad: 16 años, 11 meses
Puntos: 539
A priori y desconociendo prácticamente todo lo referente al proyecto de quien pregunta, no seré yo quien aconseje y crea que utilizar /absolute/ sea una buena idea.
Posíblemente sea el origen de múltiples efectos no deseados que necesitarán ser correjidos. Y no siempre será fácil.
  #11 (permalink)  
Antiguo 06/01/2012, 20:08
 
Fecha de Ingreso: octubre-2009
Mensajes: 20
Antigüedad: 14 años, 7 meses
Puntos: 2
Respuesta: Estructura con DIV de ancho automático

Sólo es necesario hacerlo tal como dice Kseso?. Es extremadamente sencillo y cumple todo lo requerido.

Cita:
Iniciado por kseso? Ver Mensaje
De nuevo:
Si en el html aparece primero su menú sólo necesita flotarlo y darle una anchura.
El siguiente div si no lo limita declarando anchura ocupará todo el espacio sobrante. Es así por los valores y propiedades intrínsecas a cualquier elemento de bloque.
Otra cuestión es que tenga otros elementos/propiedades que lo impidan (y que nosotros desconocemos).
O quizás a lo que se refiere es a que queda un pequeño espacio libre entre sus div's y el body?
Si fuese eso, resete a Ø los margin
Un ejemplo:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Sin título 1</title>
<style type="text/css">
* {
margin: 0; padding: 0; /* esto es un reset básico */
}
html, body {
width: 100%; height: 100%;
}
.menu {
width: 250px;
height: 100%;
float: left;
background-color: #ccc; /* fondo sólo para ver el efecto */
}
.contenido {
height: 100%;
background-color: #900; /* fondo sólo para ver el efecto */
}
</style>
</head>

<body>
<div class="menu">
<p>espacio para el menu</p>
</div>

<div class="contenido">
<p>espacio para el contenido</p>
<p>si haces un resize verás que siempre se mantiene la estructura igual</p>
</div>
</body>

</html>

El editor no me deja usar code.

Etiquetas: ancho, contenido, estructura
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:31.