elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  Duda con las medidas en porcentajes de CSS %
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda con las medidas en porcentajes de CSS %  (Leído 4,294 veces)
SCM

Desconectado Desconectado

Mensajes: 17


Ver Perfil
Duda con las medidas en porcentajes de CSS %
« en: 3 Junio 2013, 03:12 am »

Hola a todos.

Bueno, pues hay algo con lo que me como bastante el coco y es con los porcentajes en CSS, que no entiendo muy bien como funciona..

En teoría, si coloco padding-top: 50%; como en esta imagen, no se debería ver el texto justo en la mitad de la web???



Sin embargo fijaos que sale muy abajo..

En un div de medidas que coloque yo fijas si que se como funciona. Lo coloco a 50% y tengo que restarle en margen el width/2 y el height/2.

Como puedo hacer que ese texto salga centrado con porcentajes?? Gracias, un saludo.


En línea

EFEX


Desconectado Desconectado

Mensajes: 1.171


"Dinero Facil"


Ver Perfil WWW
Re: Duda con las medidas en porcentajes de CSS %
« Respuesta #1 en: 3 Junio 2013, 14:35 pm »

Código
  1. padding-left:50%

  :)


En línea

#!drvy
Moderador
***
Desconectado Desconectado

Mensajes: 5.855



Ver Perfil WWW
Re: Duda con las medidas en porcentajes de CSS %
« Respuesta #2 en: 3 Junio 2013, 15:15 pm »

Padding y margin no funcionan exactamente de esa forma al parecer (es algo que nunca llegue a entender xD). En su caso se tendría que utilizar top/bottom y left/right

Código
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <title>Demo</title>
  5. <style type="text/css">
  6.   html,body {margin:0; padding:0;}
  7.   .wrap {
  8.      top:50%; left:50%; position:absolute;
  9.      /* Maximo width 80%. Se le resta la mitad para centrar. */
  10.      width:80%; margin-left:-40%;
  11.      background:#CCC;
  12.   }
  13.   .wrap h1 {padding:0; margin:0;}
  14. </style>
  15. </head>
  16.  
  17. <body>
  18.   <div class="wrap">
  19.      <div class="contenido">
  20.         <h1>Este es mi contenido</h1>
  21.      </div>
  22.   </div>
  23. </body>
  24. </html>

jsFiddle Demo

Saludos
En línea

WHK
Moderador Global
***
Desconectado Desconectado

Mensajes: 6.606


Sin conocimiento no hay espíritu


Ver Perfil WWW
Re: Duda con las medidas en porcentajes de CSS %
« Respuesta #3 en: 3 Junio 2013, 20:02 pm »

Citar
Como puedo hacer que ese texto salga centrado con porcentajes?? Gracias, un saludo.

Un texto con text-align: center y padding left con %.

Ahora, si lo que quieres es poner un bloque de contenidos de manera centrada puedes utilizar margin auto:

Código:
<div style="width: 200px; margin: 0 auto; background-color:red;">Hola</div>

http://jsfiddle.net/ZXVjG/

Código
  1. <div style="width: 200px; margin: 0 auto; background-color:red;">Hola</div>
  2. <br />
  3.  
  4. <div style="text-align: center; width: 200px; margin: 0 auto; background-color:red;">Hola</div>
  5. <br />
  6.  
  7. <div style="text-align: center; background-color:red;">Hola</div>

Saludos.
En línea

SCM

Desconectado Desconectado

Mensajes: 17


Ver Perfil
Re: Duda con las medidas en porcentajes de CSS %
« Respuesta #4 en: 4 Junio 2013, 22:47 pm »

Gracias por las respuestas.

Mi pregunta no iba por ahí (iba más por donde ha contestado drvy). Me refiero, que poniendo padding-top: 50%; según el código éste debería centrar el div verticalmente de forma automática, pues le estás diciendo que tenga un padding de la mitad del body respecto al borde superior. Sin embargo colocas eso y se te pone casi abajo del todo, como si hubieras colocado un padding-top: 85%;

Entonces, no entiendo exactamente como funciona el padding con porcentajes. Por qué poniéndole 50% me lo coloca mucho más abajo de la mitad de la página.
Asimismo, poniendo padding-left: 50%; te lo va a tirar muy hacia la derecha, demasiado. Para centrarlo con porcentajes tendrías que colocar aproximadamente padding-left: 25%;
Eso es lo que no entiendo, que poniéndole un cuarto de lo que debería ser el 100%, te lo ponga en el centro, y que poniéndole la mitad, que es lo que debería funcionar (50%) se vaya tanto hacia el extremo.


Estas lineas no las entendí, por cierto:
Código
  1. /* Maximo width 80%. Se le resta la mitad para centrar. */
  2.      width:80%; margin-left:-40%;

Por qué se le coloca un width del 80% y luego se le resta la mitad?

Marcando un width se puede centrar muy facilmente, así es. Colocando width: 400px y margin: auto se centra por si mismo horizontalmente.

Sin embargo el problema viene cuando lo quieres centrar verticalmente o cuando no quieres que el div tenga unas medidas fijas.. es decir, si yo quiero que se amplie conforme se le coloque contenido y se centre al mismo tiempo tendría que recurrir a una tabla? Hablo de centrar un div, no el texto de dentro. El texto de dentro se puede centrar con text-align, pero lo centras dentro del div, no centras el div.

Otra forma de centrarlos es recurrir a javascript, coger las medidas de la página desde el navegador de esa persona y dividirlas entre dos y tal.. pero yo quería saber si había una forma de centrar vertical y horizontalmente con CSS sin tener que darle un width y un height concreto al div, es decir, que éste pueda ampliarse.
Eso es posible??

Un saludo y muchas gracias por la ayuda!

Aquí está con paddings, y si el resultado se ve a pantalla completa comprobaréis que no centra con el 50%.

http://jsfiddle.net/HK4gk/1/

« Última modificación: 4 Junio 2013, 22:55 pm por SCM » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
formato condicional con porcentajes
Programación Visual Basic
andrer03 3 3,661 Último mensaje 23 Junio 2010, 01:38 am
por andrer03
[Código] Porcentajes [Python]
Scripting
@Sthéfano 2 25,926 Último mensaje 30 Julio 2010, 07:54 am
por @Sthéfano
Porcentajes de tiempos frente al PC ("Actividades"). « 1 2 »
Foro Libre
Nirvanareus 16 7,862 Último mensaje 4 Agosto 2010, 00:56 am
por ~ Yoya ~
Resolución de un problema con porcentajes
Programación C/C++
SPUL 1 2,148 Último mensaje 13 Febrero 2013, 02:20 am
por rir3760
Dilema matemático con porcentajes
Programación General
WHK 5 3,318 Último mensaje 4 Julio 2013, 00:03 am
por WHK
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines