2011-10-05 10 views
12

decir que tengo la siguiente regla CSS definida:Usando fraccional em es en la propiedad font-size de CSS

.className { 
font-size:0.89em; 
} 

Mi pregunta es, ¿cómo "profunda" en fracciones puedo ir precisando ellos es para los navegadores de hecho a ¿lo admite y para que el tamaño de la fuente se represente de manera diferente para un pequeño cambio fraccionario en el valor de la letra?

+1

Parecen ir bastante profundo, no tengo números firmes que pudiera dar, pero revisa algo como http://pxtoem.com/ y solo juega. Verás que pueden hacer lo que sea. He visto ems establecido antes como 0.631111111111111em y funcionó. No obstante, es poco probable si eso será visiblemente diferente de 0.63em. –

+0

Muy bien. Y parece que la mayoría de los navegadores principales representan incluso la más mínima variación en el valor de las em con diferentes tamaños de letra. ¿Por qué no lo publica como respuesta y lo verifico como correcto? – ahmd0

+0

En última instancia, la unidad de escala más pequeña es 1px, ¿verdad? – JohnB

Respuesta

6

JohnB tiene razón. Todavía estamos renderizando en píxeles cualquiera que sea la unidad de tamaño que usemos, y los pequeños cambios en ems no cambiarán el tamaño mostrado:

Por ejemplo, para texto que se muestra originalmente a una altura de 20px *, podemos ver que hay ningún cambio efectivo cuando se añade una regla para que sea .99em de su altura original:

20 * 0.99 = 19.8 

El navegador no puede mostrar 0.8 de un píxel, por lo que (suponiendo que va a reunir a) todavía lo mostrará como 20px de alto.

Aunque parece que los navegadores no siempre se completan como se esperaba:

http://meyerweb.com/eric/thoughts/2010/02/10/rounding-off/

http://ejohn.org/blog/sub-pixel-problems-in-css/

* Sí, conozco a un tamaño de fuente de 20 píxeles no todos los días significa que sea exhibida en 20px!

+0

Muy bien, gracias. – ahmd0

Cuestiones relacionadas