En esta lección se comentan algunas de las propiedades CSS definidas en la recomendación CSS Fonts Module Level 3, publicada en septiembre de 2018.
Estas propiedades permiten elegir con todo detalle el tipo de letra que se mostrará en el navegador del usuario.
En esta lección se comentan las propiedades "clásicas", que ya estaban incluidas en CSS 2, publicada en mayo de 1998.
La propiedad line-height permite establecer el interlineado de un bloque de texto. El valor se puede expresar en cualquier unidad de longitud, aunque lo más lógico es utilizar porcentajes o em. Si se expresa en porcentajes, el valor 100% corresponde al interlineado normal.
La propiedad font-family permite establecer el tipo de letra (fuente) del elemento.
El problema de hacer referencia a una fuente concreta es que si el ordenador no tiene instalada la fuente indicada, el navegador no puede mostrarla.
Más adelante veremos cómo resolver este problema utilizando las llamadas fuentes web que permiten a los navegadores descargar fuentes. Pero en esta lección veremos una forma sencilla de poder utilizar al menos cuatro fuentes distintas, utilizando uno de los nombres de familia de fuentes genéricos serif, sans-serif, monospace, cursive y fantasy. Los navegadores tienen asociados a cada nombre genérico una fuente que sí que está instalada en el ordenador (salvo en el caso de la familia genérica fantasy que puede no tener asociada ninguna fuente especial).
El ejemplo siguiente muestra a gran tamaño las cuatro familias genéricas
La propiedad font-size permite establecer el tamaño del tipo de letra (fuente) del elemento. Se puede expresar el tamaño de varias maneras, entre ellas valores numéricos, aunque generalmente se aconseja utilizar unidades relativas (% o em).
Se puede definir un tamaño concreto, por ejemplo, 14pt, 3cm, 20px, etc.
Nota: Hace años (antes de 2010) se desaconsejaba utilizar estas unidades de forma indiscriminada porque los navegadores no permitían reducir ni ampliar los elementos definidos mediante unidades absolutas, pero actualmente no existe esa limitación.
Se puede definir el tamaño de cada elemento mediante porcentajes (o em o rem, teniendo en cuenta que 1em = 100% y que 1rem = 100%), que se interpretan con respecto al tamaño base.
En Tipografía existen lo que se llaman subfamilias tipográficas, es decir, fuentes que son variaciones de una fuente determinada. Algunas de las posibles variaciones son:
Las propiedades font-weight, font-style y font-variant le indican al navegador qué variación es la que debería mostrar. El navegador es el que tiene que decidir qué fuente (de las instaladas en el ordenador en el que se están viendo las páginas) debe utilizar o, si es capaz de ello, simular la propiedad.
La propiedad font-weight permite elegir el grosor del trazo. Existen nueve valores numéricos (100, 200, 300, 400, 500, 600, 700, 800, 900), del más fino al más grueso. Además, existen los valores normal y bold que deben coincidir respectivamente, con los valores numéricos 400 y 700. Y por último, existen los valores lighter y bolder que significan, respectivamente, un valor inferior y superior en la lista de valores numéricos y se interpretan respecto del elemento padre.
Al definir el grosor con valores numéricos, los navegadores muestran tres grosores distintos (de 100 a 500 como normal, 600 y 700 como bold y 800 y 900 más grueso que bold). Esos grosores no se aprecian de la misma manera en cada tipo de letra. En la siguiente lista, cada valor está en el grosor indicado por el propio valor:
p { font-family: sans-serif; }
p.g400 { font-weight: 400; }
p.n { font-weight: normal; }
p.g700 { font-weight: 700; }
p.b { font-weight: bold; }
p.g900 { font-weight: 900; }
El valor bolder hace que el elemento se muestre, si es posible, con un grosor mayor que el del elemento en el que está incluido. En el siguiente ejemplo, cada lista se muestra con un grosor mayor que la anterior:
Una forma de obtener una variante de un tipo de letra es inclinar las letras. En Tipografía se distinguen dos formas de inclinación:
Para distinguir si una fuente es oblicua o itálica, es necesario fijarse en letras como la "a". La imagen siguiente muestra un ejemplo: la primera línea corresponde a la fuente Aldine (normal e itálica) y la segunda línea corresponde a la fuente Arial (normal y oblicua).
La propiedad font-style permite elegir la inclinación: normal, oblique o italic. Para que los navegadores puedan mostrar las variantes oblicua e itálica es necesario que en el ordenador esté instaladas fuentes de ambas variantes, lo que no suele ser habitual.
En general, si no hay instaladas fuentes específicas, los navegadores simplemente inclinan el tipo de letra normal, tanto para oblique como italic. Como esto correspondería más bien a la variante oblicua, se aconseja dar el valor oblique en vez de italic.
Para probar si realmente los navegadores distinguen entre italic y oblique, se debe utilizar una fuente que tenga ambas variantes, por ejemplo, la fuente libre Latin Modern Roman. El ejemplo siguiente utiliza fuentes web para mostrar esa fuente aunque no esté instalada en el ordenador del usuario.
p.oblique {
font-family: "Latin Modern Roman";
font-style: oblique;
}
p.italic {
font-family: "Latin Modern Roman";
font-style: italic;
}
Nota: Firefox aplica esta propiedad correctamente, mientras que Chrome no lo hace, como se comenta en la página de diferencias entre navegadores.