Foros del Web » Creando para Internet » HTML »

Capa div a pie de página

Estas en el tema de Capa div a pie de página en el foro de HTML en Foros del Web. Hola amigos, desistiendo de la anterior estructura de mi web creo que lo mejor es hacerla al completo con divs, ya realizada la estructura me ...
  #1 (permalink)  
Antiguo 18/01/2012, 20:34
Avatar de AjoyAgua  
Fecha de Ingreso: mayo-2011
Mensajes: 22
Antigüedad: 13 años, 7 meses
Puntos: 1
Capa div a pie de página

Hola amigos, desistiendo de la anterior estructura de mi web creo que lo mejor es hacerla al completo con divs, ya realizada la estructura me queda saber como pongo un div abajo como pie de página que aunque crezca el contenido del otro div de arriba ésta se vaya siempre hacia abajo. Ahora me sucede que al meter contenido en la capa "contenido" esta atraviesa la capa "pie" como si nada. La capa "centro" siempre quedará fija incluyendo la cabecera y demás. Pero necesito que las capas "lateral" y "contenido" sean elásticas.


Os pongo el código que he hecho con Dreamweaver a ver como lo véis.


<!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>
<title>PRUEBA</title>
<style type="text/css">
<!--

img {
border-top-style: none;
border-right-style: none;
border-bottom-style: none;
border-left-style: none;
}
#CAPOTA {
position:relative;
left:-20px;
top:-10px;
width:850px;
height:100%;
z-index:1;
background-color: #000000;
margin-left: auto;
margin-right: auto;
background-image: url(nuevaestructura2012/fondocapa.jpg);
}
-->
</style>
<script type="text/javascript">
<!--
function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
//-->
</script>
<script src="Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
<link href="estilo_principal_2012.css" rel="stylesheet" type="text/css" />
<style type="text/css">
<!--
#BOTONERA { position:absolute;
left:0px;
top:150px;
width:850px;
height:24px;
z-index:2;
background-color: #FFCC00;
}
#CABECERA { position:absolute;
left:0px;
top:0px;
width:850px;
height:150px;
z-index:1;
background-color: #CCCCCC;
}
#LATERAL {
position:absolute;
left:0px;
top:175px;
width:200px;
height:848px;
z-index:3;
background-color: #999900;
}
#centro { position:absolute;
left:200px;
top:174px;
width:650px;
height:396px;
z-index:4;
background-color: #FF0000;
}
#contenido { position:absolute;
left:200px;
top:573px;
width:650px;
height:450px;
z-index:5;
background-color: #FF3366;
}
#pie { position:absolute;
left:0px;
top:1023px;
width:850px;
height:41px;
z-index:6;
background-color: #FFFF00;
}
-->
</style>
</head>

<body>
<div id="CAPOTA">
<div id="capa-sombra"> //--&gt;
<div id="CABECERA">CABECERA</div>
<div id="BOTONERA">BOTONERA</div>
<div id="LATERAL">LATERAL</div>
<div id="centro">CENTRO</div>
<div id="contenido">CONTENIDO</div>
<div id="pie">PIE</div>
</div>
</div>
</body>
</html>
  #2 (permalink)  
Antiguo 18/01/2012, 22:00
Avatar de madhatterdef  
Fecha de Ingreso: diciembre-2011
Ubicación: argentina
Mensajes: 213
Antigüedad: 13 años
Puntos: 59
Respuesta: Capa div a pie de página

primero por qué tienes js en tu style css deberías ponerlo afuera de el pero dentro del head segundo añade clear: both; y tercero para que tienes los z-index en este caso creo que no son necesarios
  #3 (permalink)  
Antiguo 18/01/2012, 22:08
Avatar de AjoyAgua  
Fecha de Ingreso: mayo-2011
Mensajes: 22
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: Capa div a pie de página

Cita:
Iniciado por madhatterdef Ver Mensaje
primero por qué tienes js en tu style css deberías ponerlo afuera de el pero dentro del head segundo añade clear: both; y tercero para que tienes los z-index en este caso creo que no son necesarios
Gracias por contestar, he quitado los z-index y también el js que no sé porque estaba ahí, no lo entiendo. Es algo que ha colocado el dreamweaver, habrá sido por pulsar algo por error.

He puesto la clase clear: both; en el formato del div que hace de pie de página, pero sigue sin moverse del sitio al colocar texto en capa contenido. Tendré que seguir investigando, muchísimas graciasss.
  #4 (permalink)  
Antiguo 18/01/2012, 22:32
Avatar de C2am  
Fecha de Ingreso: enero-2009
Ubicación: Rosario, Argentina
Mensajes: 2.005
Antigüedad: 15 años, 10 meses
Puntos: 306
Respuesta: Capa div a pie de página

El problema es el abuso de la position:absolute, lo que hace que todos los div sean independientes entre sí y no se tengan en cuenta a la hora de aumentar de tamaño.
Saludos
__________________
El mundo nada puede contra un hombre que canta en la miseria.
-- Ernesto Sábato--
  #5 (permalink)  
Antiguo 18/01/2012, 22:48
Avatar de AjoyAgua  
Fecha de Ingreso: mayo-2011
Mensajes: 22
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: Capa div a pie de página

Cita:
Iniciado por C2am Ver Mensaje
El problema es el abuso de la position:absolute, lo que hace que todos los div sean independientes entre sí y no se tengan en cuenta a la hora de aumentar de tamaño.
Saludos
Voy a explicar más o menos como lo hago:

1º Meto una plantilla jpg en Dreamweaver de como quiero que quede la estructura.

2º Voy dibujando capas encima DIV PA de la plantilla jpg.

3º Luego añado nombres a las DIV PA que he dibujado.

4º Las copio todas a la vez y las pego dentro de un archivo nuevo con una capa contenedora que tiene posición relativa y tamaños prefijados para que quede al centro del navegador (tal y como véis).

5º AQUÍ ME HE QUEDADO.



C2am muchas gracias por contestar, voy a quitar del css a las capas el estilo de pocisión absoluta.
  #6 (permalink)  
Antiguo 18/01/2012, 23:04
Avatar de AjoyAgua  
Fecha de Ingreso: mayo-2011
Mensajes: 22
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: Capa div a pie de página

Valeee, ahora parece que se tienen en cuenta a la hora de incluir contenido, pero no respetan el sitio donde estaban. ¿Por qué no se quedan en su sitio?.


EDITO: PARECE QUE HE DADO CON LA SOLUCIÓN, he puesto en el css el estilo float: left o right dependiendo de donde quería que quedasen las capas y parece que se ha solucionado. Estoy supercontenta, ¿cómo lo véis?:



<!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>
<title>PRUEBA</title>
<style type="text/css">
<!--

img {
border-top-style: none;
border-right-style: none;
border-bottom-style: none;
border-left-style: none;
}
#CAPOTA {
position:relative;
left:-20px;
top:-10px;
width:850px;
height:100%;
background-color: #000000;
margin-left: auto;
margin-right: auto;
background-image: url(nuevaestructura2012/fondocapa.jpg);
}
-->
</style>
<style type="text/css">
<!--
#BOTONERA {
left:0px;
top:150px;
width:850px;
height:24px;
background-color: #FFCC00;
}
#CABECERA {
left:0px;
top:0px;
width:850px;
height:150px;
background-color: #CCCCCC;
}
#LATERAL {
left:0px;
top:175px;
width:200px;
height:100%;
background-color: #999900;
float: left;
}
#centro {
left:700px;
top:174px;
width:650px;
height:396px;
background-color: #FF0000;
float: right;
vertical-align: top;
}
#contenido {
left:200px;
top:573px;
width:650px;
height:100%;
background-color: #FF3366;
float: right;
}
#pie {
left:0px;
top:1023px;
width:100%;
height:40px;
background-color: #FFFF00;
clear: both;
}
-->
</style>
</head>

<body>
<div id="CAPOTA">
<div id="capa-sombra">
<div id="CABECERA">CABECERA</div>
<div id="BOTONERA">BOTONERA</div>
<div id="LATERAL">
<p>LATERAL<br />
<span style="font-variant:normal; letter-spacing:normal; line-height:11px; orphans:2; text-align:-webkit-auto; text-indent:0px; text-transform:none; white-space:normal; widows:2; word-spacing:0px; -webkit-text-size-adjust:auto; -webkit-text-stroke-width:0px; background-color:rgb(255, 255, 255); display:inline !important; float:none; font-family:arial, sans-serif; font-size:small; color:rgb(34, 34, 34); font-style:normal; font-weight:normal; ">Este comportamiento</span> <br />
<span style="font-variant:normal; letter-spacing:normal; line-height:11px; orphans:2; text-align:-webkit-auto; text-indent:0px; text-transform:none; white-space:normal; widows:2; word-spacing:0px; -webkit-text-size-adjust:auto; -webkit-text-stroke-width:0px; background-color:rgb(255, 255, 255); display:inline !important; float:none; font-family:arial, sans-serif; font-size:small; color:rgb(34, 34, 34); font-style:normal; font-weight:normal; ">Este comportamiento</span> <br />

mal; font-weight:normal; ">Este comportamiento</span></div>
<div id="centro">CENTRO</div>
<div id="contenido">
<p>CONTENIDO</p>
<p>Cada uno tiene sus manias, y yo no voy a ser menos. Cuando quiero colocar varias capas que est&aacute;n juntas horizontalmente (una justo al lado de la otra) siempre las meto dentro de otra capa que las engloba. As&iacute; me es m&aacute;s f&aacute;cil aplicarle luego los estilos y queda todo m&aacute;s recogidito. Como en este caso quiero crear tres huecos rectangulares, y todos uno al lado del otro, crear&eacute; tres capas, una para los enlaces de la izquierda, otra para el espacio central que en principio usaremos para poner publicidad y otra para los enlaces de la derecha. Esas tres capas las voy a meter dentro de la capa #pie.Cada uno tiene sus manias, y yo no voy a ser menos. Cuando quiero colocar varias capas que est&aacute;n juntas horizontalmente (una justo al lado de la otra) siempre las meto dentro de otra capa que las engloba. As&iacute; me es m&aacute;s f&aacute;cil aplicarle luego los estilos y queda todo m&aacute;s recogidito. Como en este caso quiero crear tres huecos rectangulares, y todos uno al lado del otro, crear&eacute; tres capas, una para los enlaces de la izquierda, otra para el espacio central que en principio usaremos para poner publicidad y otra para los enlaces de la derecha. Esas tres capas las voy a meter dentro de la capa #pie.Cada uno tiene sus manias, y yo no voy a ser menos. Cuando quiero colocar varias capas que est&aacute;n juntas horizontalmente (una justo al lado de la otra) siempre las meto dentro de otra capa que las engloba. As&iacute; me es m&aacute;s f&aacute;cil aplicarle luego los estilos y queda todo m&aacute;s recogidito. Como en este caso quiero crear tres huecos rectangulares, y todos uno al lado del otro, crear&eacute; tres capas, una para los enlaces de la izquierda, otra para el espacio central que en principio usaremos para poner publicidad y otra para los enlaces de la derecha. Esas tres capas las voy a meter dentro de la capa #pie.Cada uno tiene sus manias, y yo no voy a ser menos. Cuando quiero colocar varias capas que est&aacute;n juntas horizontalmente (una justo al lado de la otra) siempre las meto dentro de otra capa que las engloba. As&iacute; me es m&aacute;s f&aacute;cil aplicarle luego los estilos y queda todo m&aacute;s recogidito. Como en este caso quiero crear tres huecos rectangulares, y todos uno al lado del otro, crear&eacute; tres capas, una para los enlaces de la izquierda, otra para el espacio central que en principio usaremos para poner publicidad y otra para los enlaces de la derecha. Esas tres capas las voy a meter dentro de la capa #pie.<br />
Cada uno tiene sus manias, y yo no voy a ser menos. Cuando quiero colocar varias capas que est&aacute;n juntas horizontalmente (una justo al lado de la otra) siempre las meto dentro de otra capa que las engloba. As&iacute; me es m&aacute;s f&aacute;cil aplicarle luego los estilos y queda todo m&aacute;s recogidito. Como en este caso quiero crear tres huecos rectangulares, y todos uno al lado del otro, crear&eacute; tres capas, una para los enlaces de la izquierda, otra para el espacio central que en principio usaremos para poner publicidad y otra para los enlaces de la derecha. Esas tres capas las voy a meter dentro de la capa #pie.Cada uno tiene sus manias, y yo no voy a ser menos. Cuando quiero colocar varias capas que est&aacute;n juntas horizontalmente (una justo al lado de la otra) siempre las meto dentro de otra capa que las engloba. As&iacute; me es m&aacute;s f&aacute;cil aplicarle luego los estilos y queda todo m&aacute;s recogidito. Como en este caso quiero crear tres huecos rectangulares, y todos uno al lado del otro, crear&eacute; tres capas, una para los enlaces de la izquierda, otra para el espacio central que en principio usaremos para poner publicidad y otra para los enlaces de la derecha. Esas tres capas las voy a meter dentro de la capa #pie.<br />
</p>
</div>
<div id="pie">PIE</div>
</div>
</div>
</body>
</html>

Última edición por AjoyAgua; 18/01/2012 a las 23:14
  #7 (permalink)  
Antiguo 19/01/2012, 00:06
Avatar de C2am  
Fecha de Ingreso: enero-2009
Ubicación: Rosario, Argentina
Mensajes: 2.005
Antigüedad: 15 años, 10 meses
Puntos: 306
Respuesta: Capa div a pie de página

Me alegro que estes encaminada.
Ahora, no se ve muy bien: prueba.
Fijate que el texto queda oculto debido a los left, top, right, bottom necesarios para el posicionamiento: "absolute".

Este es lo mismo pero sin esos posicionamientos: sin-left-top-right-bottom

Saludos
__________________
El mundo nada puede contra un hombre que canta en la miseria.
-- Ernesto Sábato--
  #8 (permalink)  
Antiguo 19/01/2012, 01:24
Avatar de madhatterdef  
Fecha de Ingreso: diciembre-2011
Ubicación: argentina
Mensajes: 213
Antigüedad: 13 años
Puntos: 59
Respuesta: Capa div a pie de página

hay te doy un poco de ayuda creo que lo que buscas hacer es esto

<!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 http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<style type="text/css">
<!--
body {
margin: 0;
padding: 0;
height: 100%;
}
img {
border-style: none;
}

.capota {
width: 850px;
margin: 0 auto;
background-color: #000;
background-image: url(nuevaestructura2012/fondocapa.jpg);
height: 100%;
}

.cabecera {
width: 850px;
height: 150px;
background-color: #CCC;
}

.botonera {
width: 850px;
height: 150px;
background-color: #FC0;
}
.lateral {
float: left;
width: 200px;
background-color: #999900;
height: 396px;
}
.centro {
width: 650px;
float: right;
background-color: #F00;
height: 396px;
}
.pie {
clear: both;
background-color: #FF0;
height: 40px;
width: 100%;
}
-->
</style></head>

<body>

<div class="capota">
<div class="cabecera">CABECERA</div>
<div class="botonera">BOTONERA</div>
<div class="lateral">LATERAL</div>
<div class="centro">CENTRO</div>
<div class="pie"></div>
</div>
</body>
</html>

Etiquetas: css, link, página, pie, botones, capas
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 07:55.