A font-size
propriedade especifica o tamanho ou altura da fonte. font-size
afeta não apenas a fonte à qual é aplicado, mas também é usado para calcular o valor das unidades de comprimento em, rem e ex.
p ( font-size: 20px; )
font-size
pode aceitar palavras-chave, unidades de comprimento ou porcentagens como valores. É importante notar, entretanto, que quando é declarado como parte da font
propriedade abreviada, font-size
é um valor obrigatório. Se não for incluída na abreviação, toda a linha será ignorada.
Os valores de comprimento (por exemplo, px, em, rem, ex, etc.) aos quais são aplicados font-size
não podem ser negativos.
Palavras-chave e valores absolutos
.element ( font-size: small; )
Ele aceita os seguintes valores absolutos de palavras-chave:
xx-small
x-small
small
medium
large
x-large
xx-large
Esses valores absolutos são mapeados para tamanhos de fonte específicos calculados pelo navegador. Mas você também pode usar dois valores de palavra-chave que são relativos ao tamanho da fonte do elemento pai.
Outros valores absolutos incluem mm
(milímetros), cm
(centímetros), in
(polegadas), pt
(pontos) e pc
(picas). Um ponto é igual a 1/72 de polegada, enquanto uma paica é igual a 12 pontos - esses valores são normalmente usados para documentos impressos.
Palavras-chave relativas
.element ( font-size: larger; )
larger
smaller
Por exemplo, se o elemento pai tiver um tamanho de fonte de small
, um elemento filho com um tamanho relativo definido de larger
tornará o tamanho da fonte igual a medium
para o elemento filho.
Valores percentuais
.element ( font-size: 110%; )
Os valores percentuais, como definir um tamanho de fonte de 110%, também são relativos ao tamanho da fonte do elemento pai, conforme mostrado na demonstração abaixo:
Veja o Pen qdbELL de CSS-Tricks (@ css-tricks) no CodePen.
A unidade em
.element ( font-size: 2em; )
A unidade em é uma unidade relativa baseada no valor calculado do tamanho da fonte do elemento pai. Isso significa que os elementos filho são sempre dependentes de seu pai para definir o tamanho da fonte. Por exemplo:
This is a heading
This is some text.
.container ( font-size: 16px; ) p ( font-size: 1em; ) h2 ( font-size: 2em; )
No exemplo acima, o parágrafo terá um tamanho de fonte de 16px porque 1 x 16 = 16px, enquanto o título terá 32px porque 2 x 16 = 32px. Existem muitas vantagens em dimensionar o tipo dependendo do tamanho da fonte do elemento pai, ou seja, podemos agrupar elementos em um contêiner e saber que todos os filhos sempre serão relativos uns aos outros:
Veja a Caneta Descobrindo como a unidade em funciona por CSS-Tricks (@ css-tricks) no CodePen.
A unidade rem
No caso de unidades rem, entretanto, o tamanho da fonte depende do valor do elemento raiz (ou do html
elemento).
html ( font-size: 16px; ) p ( font-size: 1.5rem; )
No exemplo acima, a unidade rem é igual a 16px (porque é herdada do html
elemento / raiz) e, portanto, o tamanho da fonte para todos os elementos de parágrafo será calculado para 24px (1,5 x 16 = 24). Ao contrário das unidades em, o parágrafo irá ignorar o estilo de todos os seus pais além da raiz.
Esta unidade é compatível com os seguintes navegadores:
cromada | Safári | Raposa de fogo | Ópera | IE | Android | iOS |
---|---|---|---|---|---|---|
Funciona | Funciona | Funciona | Funciona | 10+ | Funciona | Funciona |
A ex unidade
.element ( font-size: 20ex; )
Para unidades ex, 1ex seria igual à altura calculada da letra x minúscula do elemento raiz. Portanto, no exemplo abaixo, o html
elemento é definido como 20px
e todos os outros tamanhos de fonte são determinados pela altura x dessa fonte específica.
Veja a caneta Descobrindo como a unidade ex funciona por CSS-Tricks (@ css-tricks) no CodePen.
Experimente o demo acima, substituindo o font-family
no html
elemento para ver como os outros tamanhos de fonte mudam.
Unidades de viewport
.element-one ( font-size: 100vh; ) .element-two ( font-size: 100vw; )
As unidades da janela de visualização , como vw
e vh
, definem o tamanho da fonte de um elemento em relação às dimensões da janela de visualização:
- 1vw = 1% da largura da janela de visualização
- 1vh = 1% da altura da janela de visualização
Portanto, se tomarmos o seguinte exemplo:
.element ( font-size: 100vh; )
Em seguida, isso indicará que o tamanho da fonte do elemento deve ser sempre 100% da altura da janela de visualização em todos os momentos (50vh seria 50%, 15vh seria 15% e assim por diante). Na demonstração abaixo, tente redimensionar a altura do exemplo para observar o tipo de alongamento:
Veja o tipo de dimensionamento de caneta com unidades vh por CSS-Tricks (@ css-tricks) em CodePen.
vw
As unidades são diferentes porque definem a altura das formas das letras pela largura da janela de visualização, portanto, na demonstração abaixo, você precisará redimensionar a janela do navegador horizontalmente para ver essas alterações:
Veja o tipo de dimensionamento de caneta com unidades vw por CSS-Tricks (@ css-tricks) em CodePen.
Essas unidades são compatíveis com os seguintes navegadores:
cromada | Safári | Raposa de fogo | Ópera | IE | Android | iOS |
---|---|---|---|---|---|---|
31+ | 7 + | 31+ | 27+ | 9+ | 4,4+ | 7,1+ |
É importante notar que existem duas outras unidades de janela de visualização: vmin
e vmax
. O primeiro encontrará os valores de vh
e vw
e definirá o tamanho da fonte como o menor dos dois, enquanto vmax
define o tamanho da fonte como o maior desses dois valores.
A unidade ch
.element ( font-size: 24ch; )
A ch
unidade é semelhante à ex
unidade no sentido de que definirá o tamanho da fonte de um elemento em relação à largura do glifo 0 (zero) da fonte:
Veja o tipo de dimensionamento de caneta com unidades de ch por CSS-Tricks (@ css-tricks) em CodePen.
Esta unidade é apoiada por:
cromada | Safári | Raposa de fogo | Ópera | IE | Android | iOS |
---|---|---|---|---|---|---|
27+ | Funciona | 10+ | Funciona | 9+ | Funciona | Funciona |