Un solución para no utilizar hoja condicional es utilizar en el body
{font-size: x-small}... lo que te asegura que el tamaño base será más o
menos el mismo en todos los navegadores
Jeffrey Zeldman dixit ;-)
- Original Message -
From: Maikel Naigt [EMAIL PROTECTED]
To: Ovillo, la lista de CSS en castellano ovillo@lists.ovillo.org
Sent: Monday, September 15, 2008 1:00 PM
Subject: Re: [Ovillo] A vueltas con los em´s
Hola Rafa.
2008/9/11 Rafa Artacho [EMAIL PROTECTED]:
Buenos días:
Se esta modificando la hoja de estilos del site de mi empresa, y uno de
los
temas es pasar los tamaños de las fuentes de unidades absolutas (px) a
unidades relativas (em's).
He leído varios artículos en uno se recomienda usar un font-size para el
body del 62.5% para tomar como base 10px = 1em.
...
Por otra parte, el asignar un tamaño en % en el font-size del body ¿a qué
motivos responde? Las pruebas que estamos haciendo sin asignar en el body
ningún font-size por defecto son satisfactorias, y en todo caso si se
desea
cambiar en algún momento la proporción de los em's del resto de elementos
bastaría con asignar en ese momento un font-size en % al body, ¿es así?
La recomendación de usar un tamaño para la fuente del 62.5% en el
body (atención, NO en Mac) es por la presunta facilidad que nos da
después en la maquetación de nuestra página, ya que, al ser el tamaño
de fuente del navegador por defecto, -en sistemas Windows- de 16px, al
hacer la operación 16x0,625 nos arroja una valor para la fuente base
de 10px. Veamos por qué esa facilidad:
· El tamaño de fuente definido en el body es el tamaño base para todos
los elementos hijos y se corresponde a 1em.
· Todos los elementos cuyo tamaño (width o height) se exprese en 'em'
serán susceptibles de ser escalados cuando el usuario, en su
navegador, aumente o disminuya el tamaño de letra.
· También es probable que deseemos un cambio de tamaño de letra exacto
en algún elemento interno, por ejemplo una cabecera a 18px, pero
expresado en em (para que sea escalable por el usuario). Si nuestra
correspondencia base es 16px=1em entonces tendríamos que 18px=1,125em;
es decir, tendríamos que tirar de calculadora cada vez que queramos un
tamaño distinto de 16px. En el caso de que nuestra correspondencia
base sea 10px=1em lo tenemos más sencillo, ya que 18px=1,8em.
De esta manera conseguimos que definir el ancho o alto de un
contenedor o imagen de manera exacta en píxeles (y de definir
distintos tamaños de fuente para distintos elementos), y _que sea
escalable_, es una tarea trivial, al ser 1em=10px. Es decir, podremos
realizar diseños líquidos con medidas más exactas con respecto a la
maqueta original que nuestro diseñador nos haya fabricado en
Photoshop/Fireworks/GIMP (etc.).
Un par de peros:
· Como hemos apuntado, el tamaño por defecto en los navegadores para
Windows (y FF de Linux) es de 16px, pero no es así para Macintosh ni
para Konqueror de Linux (si no recuerdo mal su tamaño base por defecto
es 12px).
· Tampoco sabemos si el usuario ha cambiado el tamaño por defecto de la
fuente.
...y si esto es así, ¿por qué no definir directamente en el body un
tamaño de letra de 10px en vez del porcentaje y nos quitamos de
problemas? Pues porque IE lo entendería como una medida absoluta para
todos los elementos de la página web y no permitiría que el usuario
pudiera variar su tamaño mediante el navegador.
Así que la solución pasa por definir dentro del body un tamaño base
para las fuentes de 10px para todos los navegadores menos para IE, al
que le tendremos que dar media solución con el tamaño de fuente al
62.5%. Esto se puede lograr mediante los comentarios condicionales de
IE, asignándolo en una hoja de estilos particular suya, o mediante un
hack que valide (como por ejemplo el star hack)
Gracias
Espero no haberte liado más con la explicación.
Un saludo,
David Merino Ogando
___
Lista de distribución Ovillo
Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org
Puedes modificar tus datos o desuscribirte en la siguiente dirección:
http://lists.ovillo.org/mailman/listinfo/ovillo
___
Lista de distribución Ovillo
Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org
Puedes modificar tus datos o desuscribirte en la siguiente dirección:
http://lists.ovillo.org/mailman/listinfo/ovillo