Foros del Web » Creando para Internet » CSS »

Se puede centrar un div sin meterlo en otro ?

Estas en el tema de Se puede centrar un div sin meterlo en otro ? en el foro de CSS en Foros del Web. Hola, requiero centrar un DIV CON BORDE y sin indicar el WIDTH. El contenido solo sera el texto "HOLA MUNDO" Es posible sin: Indicar width ...
  #1 (permalink)  
Antiguo 09/10/2006, 18:50
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Se puede centrar un div sin meterlo en otro ?

Hola,

requiero centrar un DIV CON BORDE y sin indicar el WIDTH.

El contenido solo sera el texto "HOLA MUNDO"

Es posible sin:
  1. Indicar width
  2. MEter el DIV en otro DIV
Es posible ?

Cómo?

Busco en GOOLE y solo dicen que lo meta en otro DIV...

Pos pa tener un salpicón de DIVS mejor me hago una sola tablita y listo...

Se puede ?
  #2 (permalink)  
Antiguo 09/10/2006, 21:08
 
Fecha de Ingreso: abril-2005
Mensajes: 247
Antigüedad: 19 años
Puntos: 1
Talves esto te pueda ayudar

Css

#flote {
margin: 0px auto;
border: 1px solid #dedbbd;
}

htm

<div id="flote">Hola mundos</div>
  #3 (permalink)  
Antiguo 09/10/2006, 23:44
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 1 mes
Puntos: 25
centrar div? pues con:

Código HTML:
<center><div>Hola mundo</div></center> 
__________________
Hospedaje Web al mejor costo!
  #4 (permalink)  
Antiguo 10/10/2006, 07:01
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Cita:
Talves esto te pueda ayudar

Css

#flote {
margin: 0px auto;
border: 1px solid #dedbbd;
}

htm

<div id="flote">Hola mundos</div>
No funciona, el DIV toma el 100% de la ventana.

Cita:
centrar div? pues con:
Urgido, se trata de centrar el DIV con CSS y sin indicar WIDTH.

Gracias por el intento.
  #5 (permalink)  
Antiguo 10/10/2006, 07:02
Avatar de kahlito
Colaborador
 
Fecha de Ingreso: marzo-2003
Ubicación: En el Estrecho y el mar
Mensajes: 2.936
Antigüedad: 21 años, 1 mes
Puntos: 65
Cita:
Iniciado por Anarko Ver Mensaje
Hola,

requiero centrar un DIV CON BORDE y sin indicar el WIDTH.

El contenido solo sera el texto "HOLA MUNDO"

Es posible sin:
  1. Indicar width
  2. MEter el DIV en otro DIV
Es posible ?

Cómo?

Hola Anarko, prueba con esto:

Código HTML:
<style type="text/css">
#centrando_con_borde
{
text-align:center;
border: 2px solid #996600;
}
</style>
</head>

<body>
<div id="centrando_con_borde"><p>Hola mundo</p></div>
</body> 
Cita:
Iniciado por Anarko Ver Mensaje
[*]MEter el DIV en otro DIV
Meter el texto "Hola mundo como un div" , estarias entonces cometiendo una divitis, no seria correcto.
  #6 (permalink)  
Antiguo 10/10/2006, 07:42
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Gracias,

Precisamente, eso es lo que no quiero hacer, ("DIVITIS"), por eso digo que mejor recurriria a las tablas.

He utilizado esto:
Código:
<style type="text/css">
#centrando_con_borde
{
text-align:center;
border: 2px solid #996600;
}
</style>

Luego HTML:

<body>
<div id="centrando_con_borde"><p>Hola mundo</p></div>
</body>
Y el borde del DIV sigue tomandose el 100%.
  #7 (permalink)  
Antiguo 10/10/2006, 07:47
Avatar de kahlito
Colaborador
 
Fecha de Ingreso: marzo-2003
Ubicación: En el Estrecho y el mar
Mensajes: 2.936
Antigüedad: 21 años, 1 mes
Puntos: 65
La verdad no entiendo del todo que quieres hacer. Si no quieres tener un ancho determinado y que tampoco te coja el 100%, podrias especificarlo un poco más?
  #8 (permalink)  
Antiguo 10/10/2006, 08:22
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Gracias.

Pretendo tener el div con borde con el ancho que genereen 3 palabras en linea seguida.

Las palabras pueden tener 3 o 10 letras.

Y el div devera tener su borde e ir centrado.

xD No crei que fuera complicado...
  #9 (permalink)  
Antiguo 10/10/2006, 10:37
 
Fecha de Ingreso: diciembre-2003
Mensajes: 1.583
Antigüedad: 20 años, 3 meses
Puntos: 13
Ya le pillé jejejeje. En vez de un DIV lo que debes usar es SPAN. La anchura por defecto de éste va a depender de su contenido, a diferencia del DIV que por defecto toma la anchura completa de su contenedor. Depués en el CSS a SPAN le defines sus margenes laterales en AUTO, y al elemento contenedor (en este caso BODY) debes alinear el texto al centro.

Código:
body{
    text-align: center;
}
.mispan{
    margin: auto;
    ...
}
  #10 (permalink)  
Antiguo 10/10/2006, 10:50
Avatar de jesusbet
(Desactivado)
 
Fecha de Ingreso: mayo-2004
Ubicación: Monterrey, MX
Mensajes: 2.667
Antigüedad: 19 años, 11 meses
Puntos: 2
y si centras el párrafo y no el div?
  #11 (permalink)  
Antiguo 10/10/2006, 12:04
 
Fecha de Ingreso: diciembre-2003
Mensajes: 1.583
Antigüedad: 20 años, 3 meses
Puntos: 13
jesusbet... lo que pasa es que el div lo quiere con borde. Por eso e smejor que en vez de DIV use SPAN como expliqué en mi último comentario.
  #12 (permalink)  
Antiguo 10/10/2006, 12:22
Avatar de jesusbet
(Desactivado)
 
Fecha de Ingreso: mayo-2004
Ubicación: Monterrey, MX
Mensajes: 2.667
Antigüedad: 19 años, 11 meses
Puntos: 2
En ese caso, el margin: auto es inútil... :s
  #13 (permalink)  
Antiguo 10/10/2006, 12:34
 
Fecha de Ingreso: diciembre-2003
Mensajes: 1.583
Antigüedad: 20 años, 3 meses
Puntos: 13
doutch... tienes toda la razón. Usando un SPAN basta con que en el elemento padre (en este caso BODY) alinees el texto al centro. El MARGIN:AUTO está sobrando
  #14 (permalink)  
Antiguo 10/10/2006, 13:37
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Hola amigos, pos....

Si, tambien habria podido utilizar un <p> con display:inline;

Pero tonces la respuesta a mi pregunta es:

No se puede centrar un div con borde sin aplicar WIDTH ¿?

Esa es la situación ?
  #15 (permalink)  
Antiguo 10/10/2006, 13:59
 
Fecha de Ingreso: diciembre-2003
Mensajes: 1.583
Antigüedad: 20 años, 3 meses
Puntos: 13
Si a un elemento de bloque (DIV, P, H1, etc.) no le defines un ancho (propiedad WIDTH), por defecto ocupará todo el ancho que tenga disponible en su elemento padre.

Para centrar este tipo de elementos debes definir el mismo valor para margin-left y margin-right. Pero en tu caso no es posible ya que quieres que el ancho del elemento se ajuste a su contenido, lo que sólo puedes lograr con un elemento "inline".
  #16 (permalink)  
Antiguo 10/10/2006, 14:19
Avatar de jesusbet
(Desactivado)
 
Fecha de Ingreso: mayo-2004
Ubicación: Monterrey, MX
Mensajes: 2.667
Antigüedad: 19 años, 11 meses
Puntos: 2
Cita:
Iniciado por frijolerou Ver Mensaje
doutch... tienes toda la razón. Usando un SPAN basta con que en el elemento padre (en este caso BODY) alinees el texto al centro. El MARGIN:AUTO está sobrando
de hecho, está sobrando porque a un elemento inline no le puedes asignar un margin, solo a elementos bloque.

Anarko, yo no conozco la forma de hacerlo (por lo que no me atrevo a decir que no se puede), sin embargo, sí puedo decirte que la mejor forma de obtener el resultado que tú buscas (es decir, la más estándar/accesible/usable) sería aplicando un width y un margin al div.

Salud
  #17 (permalink)  
Antiguo 10/10/2006, 15:48
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Me han enseñado bastante.

Gracias.
  #18 (permalink)  
Antiguo 16/10/2006, 14:37
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Hola,

Observen esta clase
Código PHP:
<style type="text/css">
.
cc{
border:1px dashed green;
margin:0 auto;
background:#aabbcc;
}
.
mini{
font-size:7.5pt;
}
</
style
y ahora este parrafo y su contenido encerrado en la tabla con el STYLE asi:

Código PHP:
<table class="cc"><tr><td><class="mini">=-=-=-=<br/>
Visit AboutUs.org for more information about ancho.com<br/>
&
amp;amp;lt;a href=&amp;amp;quot;http://www.aboutus.org/ancho.com&amp;amp;quot;&amp;amp;gt;AboutUs: ancho.com&amp;amp;lt;/a&amp;amp;gt;<br/>
Registration Service Provided ByIDC<br/>
Contactwarren@warren.com<br/>
Domain nameancho.com<br/>
Administrative Contact:<br/>
IDC<br/>
Warren Weitzman (warren@warren.com)<br/>
+
1.3019801111<br/>
Fax: +1.2023187768<br/>
Internet Development Corp.<br/>
Box 342052<br/>
BethesdaMD 20817<br/>
US<br/>
Technical Contact:<br/>
IDC<br/>
Warren Weitzman (warren@warren.com)<br/>
+
1.3019801111<br/>
Fax: +1.2023187768<br/>
Internet Development Corp.<br/>
Box 342052<br/>
BethesdaMD 20817<br/>
US<br/>
Registrant Contact:<br/>
IDC<br/>
Warren Weitzman (warren@warren.com)<br/>
+
1.3019801111<br/>
Fax: +1.2023187768<br/>
Internet Development Corp.<br/>
Box 342052<br/>
BethesdaMD 20817<br/>
US<br/>
StatusLocked<br/>
Name Servers:<br/>
ns1.proredirect.com<br/>
ns2.proredirect.com<br/>
We reserve the right to modify these terms at any timeBy submitting<br/>
this queryyou agree to abide by these terms.<br/>
Version 6.3 4/3/2002<br/>
</
p></td></tr></table
Si anlizan veran que el ancho del TD o de la tabla misma, es "auto".

Y no hay ni "DIVITIS" ni "TABLITIS", pero aqui no se necesita una tabla, solo se requiere un DIV con borde, y centrado que presente la info.

Pueden decirme como hacerlo ?

Es que... Estoy encerrado, hice lo que me sugirieron del SPAN y tampoco funciono:
Código PHP:
<style type="text/css">
.
cc{
margin0px auto;
border1px solid #dedbbd;
}
.
mini{
font-size:7.5pt;
}
</
style>
<
div><span class="mini cc">domainancho.com.... <br/> 
Cómo se centra con CSS sin indicar WIDTH ?
  #19 (permalink)  
Antiguo 16/10/2006, 16:38
Avatar de Rafael
Modegráfico
 
Fecha de Ingreso: marzo-2003
Mensajes: 9.028
Antigüedad: 21 años, 1 mes
Puntos: 1826
Una tabla reacciona diferente que un div por "default".

margin:0 auto;

Es lo mismo que ya te comentaron, la diferencia con una tabla es que la tabla y las celdas "colapsan" si está vacío, y justo comienzan a llenarse.

Un div por el contrario es un elemento organizador, amplio para que le quepan cosas dentro.

Una cosa es divititis y otra usar lo que requieras.

Tal vez te funcione usar una tabla como en el ejemplo, con una celda.
  #20 (permalink)  
Antiguo 16/10/2006, 18:48
Avatar de jesusbet
(Desactivado)
 
Fecha de Ingreso: mayo-2004
Ubicación: Monterrey, MX
Mensajes: 2.667
Antigüedad: 19 años, 11 meses
Puntos: 2
Cita:
Iniciado por Anarko Ver Mensaje
Código PHP:
<table class="cc"><tr><td><class="mini">=-=-=-=<br/>
Visit AboutUs.org for more information about ancho.com<br/>
&
amp;amp;lt;a href=&amp;amp;quot;http://www.aboutus.org/ancho.com&amp;amp;quot;&amp;amp;gt;AboutUs: ancho.com&amp;amp;lt;/a&amp;amp;gt;<br/>
Registration Service Provided ByIDC<br/>
Contactwarren@warren.com<br/>
Domain nameancho.com<br/>
Administrative Contact:<br/>
IDC<br/>
Warren Weitzman (warren@warren.com)<br/>
+
1.3019801111<br/>
Fax: +1.2023187768<br/>
Internet Development Corp.<br/>
Box 342052<br/>
BethesdaMD 20817<br/>
US<br/>
Technical Contact:<br/>
IDC<br/>
Warren Weitzman (warren@warren.com)<br/>
+
1.3019801111<br/>
Fax: +1.2023187768<br/>
Internet Development Corp.<br/>
Box 342052<br/>
BethesdaMD 20817<br/>
US<br/>
Registrant Contact:<br/>
IDC<br/>
Warren Weitzman (warren@warren.com)<br/>
+
1.3019801111<br/>
Fax: +1.2023187768<br/>
Internet Development Corp.<br/>
Box 342052<br/>
BethesdaMD 20817<br/>
US<br/>
StatusLocked<br/>
Name Servers:<br/>
ns1.proredirect.com<br/>
ns2.proredirect.com<br/>
We reserve the right to modify these terms at any timeBy submitting<br/>
this queryyou agree to abide by these terms.<br/>
Version 6.3 4/3/2002<br/>
</
p></td></tr></table
Si anlizan veran que el ancho del TD o de la tabla misma, es "auto".

Y no hay ni "DIVITIS" ni "TABLITIS", pero aqui no se necesita una tabla, solo se requiere un DIV con borde, y centrado que presente la info.

Pueden decirme como hacerlo ?

Es que... Estoy encerrado, hice lo que me sugirieron del SPAN y tampoco funciono:
Código PHP:
<style type="text/css">
.
cc{
margin0px auto;
border1px solid #dedbbd;
}
.
mini{
font-size:7.5pt;
}
</
style>
<
div><span class="mini cc">domainancho.com.... <br/> 
Cómo se centra con CSS sin indicar WIDTH ?

por dios, ese código es asqueroso, mejor méte el div en otro div y así limpias más el código :s
  #21 (permalink)  
Antiguo 16/10/2006, 19:43
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Oigan, no me digan que la solucion es DIV dentro de DIV... ¿?

Vamos!, que asi no se vale!. Seguro hay alguna forma de hacerlo sin METER DIV DENTRO de DIV y SIN TABLAS, (una).
  #22 (permalink)  
Antiguo 17/10/2006, 05:58
Avatar de bhagat  
Fecha de Ingreso: julio-2002
Ubicación: Granada
Mensajes: 469
Antigüedad: 21 años, 9 meses
Puntos: 7
Pregunta ¿Cual es el problema de incluir un DIV dentro de otro DIV?

La verdad es que no entiendo porque tanto lio, si lo mas facil es hacerlo así, porque buscarle 5 patas al gato y "complicarnos" queriendo hacerlo "mas facil".

En las tablas tambien se usa incluir un <table> dentro de otra <table> y nadie dice nada.

Total en una página donde van tantos DIV, ¿cual es el problema de incluir uno dentro de otro? ¿hay alguna razón de importancia?

saludos amig@s
__________________
Por prudencia, la palabra SIEMPRE,
no la deberiamos usar NUNCA

Bhagat Dominguez
www.percusioncreativa.com
  #23 (permalink)  
Antiguo 17/10/2006, 16:37
Avatar de kahlito
Colaborador
 
Fecha de Ingreso: marzo-2003
Ubicación: En el Estrecho y el mar
Mensajes: 2.936
Antigüedad: 21 años, 1 mes
Puntos: 65
Hola de nuevo.

Sí no me equivoco creo que no quieres meter un div dentro de otro div para no cometer una supuesta divitis, y no es así, ya que eso en css si es posible es más en muchas ocasiones se utiliza un div contenedor que luego dentro lleva todo el contenido general y con varios divs así que no es una divitis, el problema de la divitis es por ejemplo que en un encabezado, texto, y contenido en general en vez de utilizar h1, p, etc etc utilizas siempre un div delante, como por ejemplo podria ser algo así:

Código HTML:
<div>Encabezado</div>
<div>Parrafo</div>
<div>Imagen</div> 
etc etc

Por otro lado el ejemplo que pones no es muy semántico que digamos, ya que no es normal tener una frase entera sin espacios así que para hacer eso simplemente como te indicaban arriba dándole un margen al texto o al div ya conseguirias tener un espacio y que se estire automaticamente segun el contenido que metas pero siempre con un ancho.

De todas formas si quieres centrarlo sin un ancho determinado y sin meter un div en otro div te puede servir esto, que luego cambiarias p por span (al meter más contenido) y listo.

Código HTML:
<style type="text/css">
#contenedor{
position:relative;
text-align:center;
margin:0 auto;} 
.centrando_con_borde{
 border: 2px solid #996600; display:inline;}
</style> 
</head> 
<body> 
<div id="contenedor">
<p class="centrando_con_borde">Palabra uno dos y tres o las que sean...</p>
</div> 
</div>
</body> 
  #24 (permalink)  
Antiguo 17/10/2006, 17:49
Avatar de Rafael
Modegráfico
 
Fecha de Ingreso: marzo-2003
Mensajes: 9.028
Antigüedad: 21 años, 1 mes
Puntos: 1826
Aunque está un punto interesante... haría falta una opción collapse... mmm, a ver que hay en la css3.
  #25 (permalink)  
Antiguo 17/10/2006, 22:22
Avatar de jesusbet
(Desactivado)
 
Fecha de Ingreso: mayo-2004
Ubicación: Monterrey, MX
Mensajes: 2.667
Antigüedad: 19 años, 11 meses
Puntos: 2
Siempre quise escribir lo mismo que Kahlito pero soy muy flojo... tiene toda la razón..
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 20:40.