Foros del Web » Creando para Internet » CSS »

Centrar un DIV

Estas en el tema de Centrar un DIV en el foro de CSS en Foros del Web. Buenas, probablemente este tema esté repetido hasta la saciedad pero tengo un problema, no se me centra un div, es decir, quiero centrar el div ...
  #1 (permalink)  
Antiguo 26/02/2013, 12:04
Avatar de kiM-  
Fecha de Ingreso: mayo-2008
Mensajes: 191
Antigüedad: 15 años, 10 meses
Puntos: 2
Centrar un DIV

Buenas, probablemente este tema esté repetido hasta la saciedad pero tengo un problema, no se me centra un div, es decir, quiero centrar el div #contenedor TOTALMENTE, es decir, que TODO vaya en el centro, pero no lo consigo, os dejo el código:

Cita:
<!DOCTYPE html>
<html>
<head>
<title> Prueba Title </title>
<//---Aquí van metas---//>
<//---Link a la hoja de estilos---//>
<style>
#contenedor { margin: auto;}
#cuerpo {width: 700px; float:left;}
#menu {width: 260px; float:left;}
</style>
</head>
<body>
<div id="contenedor"
<div id="logo"><img src="logo.png"></img></div>
<div id="menu">MENU</div>
<div id="cuerpo">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus lacus arcu, sagittis sit amet commodo nec, ultrices sed sem. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Fusce eu tortor erat, ut mollis ipsum. Duis et odio id tellus tristique suscipit. In condimentum egestas sem. Nullam rhoncus bibendum metus a interdum. Aliquam tellus nulla, tincidunt ac vehicula vitae, facilisis eget lectus. Nam rhoncus posuere consectetur. Maecenas sit amet nisi vitae mauris ultricies commodo at bibendum sapien. Cras dictum erat eget nisi iaculis posuere.</div>
<div id="footer"><img src="footer.png"></img></div>
</div>
</body>
</html>
Saludos y gracias!
  #2 (permalink)  
Antiguo 26/02/2013, 12:48
 
Fecha de Ingreso: febrero-2013
Mensajes: 5
Antigüedad: 11 años, 1 mes
Puntos: 1
Respuesta: Centrar un DIV

Tienes que completar la etiqueta: <div id="contenedor">
  #3 (permalink)  
Antiguo 26/02/2013, 13:30
Avatar de kiM-  
Fecha de Ingreso: mayo-2008
Mensajes: 191
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Centrar un DIV

Cierto... pero aún así no se centra :\... qué puedo estar haciendo mal?
  #4 (permalink)  
Antiguo 26/02/2013, 13:39
Avatar de pitufoweb  
Fecha de Ingreso: enero-2008
Ubicación: Un Mundo Raro
Mensajes: 1.148
Antigüedad: 16 años, 3 meses
Puntos: 181
Respuesta: Centrar un DIV

Tienes que darle un ancho.

#contenedor { margin: auto; width:960px; }



Saludos
__________________
------------- " La felicidad no llega de afuera, nace desde dentro. " -------------
  #5 (permalink)  
Antiguo 26/02/2013, 13:52
Avatar de kiM-  
Fecha de Ingreso: mayo-2008
Mensajes: 191
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Centrar un DIV

Cierto, muchisimas gracias, ahora me surge otra duda; Me gustaría pegar el div menú a la parte de arriba ya que cuando le pongo un fondo al div se nota la separación entre la cabezera y el menú (un espacio blanco), he probado con margin, padding.. y nada, cómo podría solucionarlo?

Código:
Cita:
<!DOCTYPE html>
<html>
<head>
<title> Prueba Title </title>
<//---Aquí van metas---//>
<//---Link a la hoja de estilos---//>
<style>
#contenedor {width: 960px; margin-left:auto; margin-right:auto;}
#cuerpo {width: 700px; float:left; margin:0; padding:0;}
#menu {width: 260px; float:left; background-image:url('bg_menu.png'); margin:50; padding:0;}
</style>
</head>
<body>
<div id="contenedor">
<div id="logo"><img src="logo.png"></img></div>
<div id="menu">MENU</div>
<div id="cuerpo">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus lacus arcu, sagittis sit amet commodo nec, ultrices sed sem. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Fusce eu tortor erat, ut mollis ipsum. Duis et odio id tellus tristique suscipit. In condimentum egestas sem. Nullam rhoncus bibendum metus a interdum. Aliquam tellus nulla, tincidunt ac vehicula vitae, facilisis eget lectus. Nam rhoncus posuere consectetur. Maecenas sit amet nisi vitae mauris ultricies commodo at bibendum sapien. Cras dictum erat eget nisi iaculis posuere.</div>
<div id="footer"><img src="footer.png"></img></div>
</div>
</body>
</html>
  #6 (permalink)  
Antiguo 26/02/2013, 17:04
Avatar de pitufoweb  
Fecha de Ingreso: enero-2008
Ubicación: Un Mundo Raro
Mensajes: 1.148
Antigüedad: 16 años, 3 meses
Puntos: 181
Respuesta: Centrar un DIV

Tal ves hay algún otro elemento que no lo deja estar pegado la aparte de arriba. Así como lo tienes ahora, no creo que tengas ese problema.




Saludos
__________________
------------- " La felicidad no llega de afuera, nace desde dentro. " -------------
  #7 (permalink)  
Antiguo 26/02/2013, 17:11
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Respuesta: Centrar un DIV

Hola kiM-:
Si quieres separar el logo del menú, adiciona al CSS del DIV logo: margin-bottom: 10px; o el valor que necesitas que se separe.

Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #8 (permalink)  
Antiguo 27/02/2013, 10:29
Avatar de kiM-  
Fecha de Ingreso: mayo-2008
Mensajes: 191
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Centrar un DIV

El problema es que precisamente no quiero que haya espacio, si pongo 10px pues se separa más, pero si pongo 0 se queda igual, con el pequeño espacio blanco debajo del logo, en cambio si pongo -10 si se junta, pero no creo que esa medida sea la correcta, cuál puede ser el problema?

Aparte, otra duda que me surge, he puesto:

Cita:
html{height:100%;}
body {height:100%; margin:0; padding:0;}
Para que el div menú y cuerpo tengan un ancho del 100% y se pueda ver el fondo, y para que la web no tenga ningún espacio arriba y abajo, pero resulta que abajo sí que tiene espacio :\ qué puede ser?

saludos y gracias!
  #9 (permalink)  
Antiguo 27/02/2013, 10:49
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Respuesta: Centrar un DIV

Para empezar con height 100% estás refiriendo a la altura de la página y no el ancho.
Te entendí mal sobre la separación del logo con el menú, si no le pones margin-bottom: 10px; debería estara pegado los 2 div.
Porque no muestras el link de tu página para poderla ver.

Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #10 (permalink)  
Antiguo 27/02/2013, 11:30
Avatar de kiM-  
Fecha de Ingreso: mayo-2008
Mensajes: 191
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Centrar un DIV

Vale, he hecho un sitio y lo he subido:

http://testweb23.comeze.com/

Como podrás observar hay un pequeño espacio blanco debajo del logo, encima del menú y las noticias, no lo consigo quitar y he usado el margin-bottom: 0px pero nada :\...

Y también hay otro espacio al final de la página, se supone que con el margin: 0 en body se debería quitar pero no, solo se ha quitado el de encima, alguna solución para ambas dudas?

saludos y gracias!
  #11 (permalink)  
Antiguo 27/02/2013, 11:42
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Centrar un DIV

Yo creo que el problema va a ser esta licencia:

Código HTML:
Ver original
  1. <img src="logo.png"></img>

Que debería de ser:
Código HTML:
Ver original
  1. <img src="logo.png" />

O también (ya que es HTML5)
Código HTML:
Ver original
  1. <img src="logo.png">
  #12 (permalink)  
Antiguo 27/02/2013, 11:49
Avatar de kiM-  
Fecha de Ingreso: mayo-2008
Mensajes: 191
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Centrar un DIV

Qué va, lo he cambiado y nada, los espacios continúan, no entiendo que es lo que me estoy olvidando o que no estoy poniendo, no logro quitar los espacios :\
  #13 (permalink)  
Antiguo 27/02/2013, 11:58
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Centrar un DIV

Cita:
Iniciado por kiM- Ver Mensaje
Qué va, lo he cambiado y nada, los espacios continúan, no entiendo que es lo que me estoy olvidando o que no estoy poniendo, no logro quitar los espacios :\
La cosa es porque es un elemento en linea, pero no debería de causar ese espacio. De todas formas, poniendo la imagen como bloque a la fuerza desaparecerá ese espacio.

Código CSS:
Ver original
  1. div#logo img {
  2.   display: block;
  3. }

O le especificas la altura a div#logo.
  #14 (permalink)  
Antiguo 27/02/2013, 12:05
Avatar de kiM-  
Fecha de Ingreso: mayo-2008
Mensajes: 191
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Centrar un DIV

A ver, a qué te refieres con un elemento en línea?

Otra cosa, por qué añadir el display:block a "div#logo" y no a #logo sin más? no se puede?

Y una última pregunta, ese código es "limpio" o es algún hack/apaño/trick?

Saludos!
  #15 (permalink)  
Antiguo 27/02/2013, 12:10
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Centrar un DIV

Cita:
Iniciado por kiM- Ver Mensaje
A ver, a qué te refieres con un elemento en línea?
A un elemento cuyo valor display es igual a inline o inline-block. Como en el código fuente hay saltos de línea, se crea un espacio. Por ejemplo, el caso más usual y gráfico, es cuando escribes un texto en dos líneas, aunque no pongas espacio de la primera a la segunda linea se crea un espacio igualmente. Pues con los elementos en linea pasa lo mismo.
¡Pero! Y aquí lo extraño y lo que no me explico, esto suele ocurrir cuando hay dos elementos en línea seguidos, y no es el caso ya que luego viene el cierre de div.

Cita:
Iniciado por kiM- Ver Mensaje
Otra cosa, por qué añadir el display:block a "div#logo" y no a #logo sin más? no se puede?
Es lo mismo. Yo tengo la manía de poner el elemento junto al id o la clase en el selector. Da igual como lo pongas.

Cita:
Iniciado por kiM- Ver Mensaje
Y una última pregunta, ese código es "limpio" o es algún hack/apaño/trick?
Bueno, vista la explicación de arriba yo diría que es bastante limpio, ¿no?
  #16 (permalink)  
Antiguo 27/02/2013, 12:22
Avatar de kiM-  
Fecha de Ingreso: mayo-2008
Mensajes: 191
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Centrar un DIV

Es decir, que el espacio blanco solo debería estar si hago un salto de línea <br> o algo similar, no? Vamos, que como no hay salto de línea y está todo "junto" ese espacio no debería existir, correcto? Entonces por qué está ahí? Quizás me he liado con tu explicación o no la he entendido bien. Quizás haber puesto un div debajo de otro ha hecho que aparezca ese espacio?

Respecto al tema del "div#logo", he puesto el display:block en #logo y no ha pasado absolutamente nada, ha seguido igual, en cambio poniendo div#logo si que ha desaparecido el espacio, a qué se debe?

Saludos y gracias por responder!
  #17 (permalink)  
Antiguo 27/02/2013, 12:38
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: Centrar un DIV

No tiene nada que ver con br... Da igual.

Cita:
Iniciado por kiM- Ver Mensaje
Respecto al tema del "div#logo", he puesto el display:block en #logo y no ha pasado absolutamente nada, ha seguido igual, en cambio poniendo div#logo si que ha desaparecido el espacio, a qué se debe?
En principio es lo mismo. Lo único que puede haber pasado es que tengas otra regla sobre #logo en algún momento después en tu CSS, por eso parece que no haya hecho nada —ya que aplica luego la otra regla—, y luego al ser más específico (ver especifidad CSS) este prevalezca.
  #18 (permalink)  
Antiguo 27/02/2013, 12:56
Avatar de kiM-  
Fecha de Ingreso: mayo-2008
Mensajes: 191
Antigüedad: 15 años, 10 meses
Puntos: 2
Respuesta: Centrar un DIV

Es decir, tendría que borrar la regla que está por encima para que la otra funcionase, no? Pero yo en ese código lo veo todo bien ordenado y no veo nada que obstruya alguna otra regla, le he quitado los floats y aún así sigue igual :\
  #19 (permalink)  
Antiguo 28/02/2013, 11:30
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Respuesta: Centrar un DIV

Hola kiM-:
Una forma sería así:
Código HTML:
Ver original
  1. <!doctype html>
  2. <html lang="en">
  3.     <meta charset="UTF-8">
  4.     <title>Document</title>
  5.     <style>
  6.     *{
  7.         margin: 0;
  8.         padding: 0;
  9.     }
  10.     body{
  11.         font-family: Arial; color:#FFF;
  12.         width: 100%;
  13.     }
  14.     #contenedor{margin: 0 auto; width: 960px;}
  15.     header{background-image: url(img/logo.png); height: 250px;}
  16.     nav{background-image:url('img/bg_menu.png');height: 830px; float: left; width: 260px}
  17.     article{background-image:url('img/bg_news.png'); color: #FFF; float: left; height: 830px; width: 700px;}
  18.     </style>
  19. </head>
  20.     <div id="contenedor">
  21.         <header></header>
  22.         <section>
  23.             <nav>MENÚ</nav>
  24.             <article>
  25.                 <p class="text">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus lacus arcu, sagittis sit amet commodo nec, ultrices sed sem. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Fusce eu tortor erat, ut mollis ipsum. Duis et odio id tellus tristique suscipit. In condimentum egestas sem. Nullam rhoncus bibendum metus a interdum. Aliquam tellus nulla, tincidunt ac vehicula vitae, facilisis eget lectus. Nam rhoncus posuere consectetur. Maecenas sit amet nisi vitae mauris ultricies commodo at bibendum sapien. Cras dictum erat eget nisi iaculis posuere. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus lacus arcu, sagittis sit amet commodo nec, ultrices sed sem. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Fusce eu tortor erat, ut mollis ipsum. Duis et odio id tellus tristique suscipit. In condimentum egestas sem. Nullam rhoncus bibendum metus a interdum. Aliquam tellus nulla, tincidunt ac vehicula vitae, facilisis eget lectus. Nam rhoncus posuere consectetur. Maecenas sit amet nisi vitae mauris ultricies commodo at bibendum sapien. Cras dictum erat eget nisi iaculis posuere.</p>
  26.             </article>
  27.         </section>
  28.         <div id="footer"><img src="img/footer.png" /></div>
  29.     </div>
  30. </body>
  31. </html>
Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/

Etiquetas: html
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 00:30.