Converta em para píxeis com qualquer tamanho do elemento pai

Última revisão do conteúdo:

Com a predefinição do navegador um em vale 16 píxeis, pelo que 1,5em dá 24. Escreva o valor em em, ajuste o tamanho de letra do elemento pai e leia o resultado: mais abaixo está a tabela da acumulação por aninhamento.

em
px
para
PUBLICIDADE

Para que serve converter em para píxeis?

O em passa a píxeis com uma única multiplicação: o valor em em vezes o tamanho de letra do elemento pai. Com a predefinição do navegador esse pai tem 16 px, pelo que 1em dá 16 píxeis e 1,5em dá 24. A unidade refere-se ao tamanho de texto do elemento que a contém [1].

A conversão serve ao ler a folha de estilos de outra pessoa e querer saber quanto mede na realidade um espaçamento escrito como 0,75em. A resposta depende do sítio do documento onde esse espaçamento está, e é isso que distingue o em das restantes unidades relativas.

O pai não tem de medir 16 px. Dentro de um cartão ou de uma tabela costuma ter 14 px, num título de secção 20 px ou mais, por isso o campo aceita qualquer valor de 1 a 200.

Mais abaixo encontra uma tabela com 26 valores em três tamanhos do pai, a tabela da acumulação por aninhamento e a regra sobre quando recorrer ao em e quando ao rem. O caminho inverso cabe ao conversor de píxeis para em.

Como calcular em para píxeis à mão? Fórmula e exemplo

A fórmula tem uma só operação: píxeis = em × tamanho de letra do elemento pai. Esse tamanho é a font-size do elemento dentro do qual o seu se encontra, e se ninguém o alterou o navegador usa 16 px.

Exemplo com um espaçamento de 1,25em: com um pai de 16 px sai 1,25 × 16 = 20 píxeis. O mesmo valor dentro de um cartão composto a 14 px dá 17,5 píxeis, e num título de 20 px sobe para 25.

Uma regra merece atenção. Na propriedade font-size o em refere-se ao pai, mas em qualquer outra propriedade do mesmo elemento – em padding, margin ou width – refere-se ao tamanho de letra desse elemento [2]. Um elemento com font-size: 1.5em e padding: 1em com um pai de 16 px tem texto de 24 px e igualmente 24 px de preenchimento.

A unidade rem calcula-se da mesma forma, mas conta sempre a partir do elemento html e dá por isso o mesmo resultado em todo o documento: é a tarefa do conversor de rem para píxeis. Esses mesmos 16 píxeis valem 12 pontos tipográficos na composição, do que trata o conversor de pontos para píxeis.

Quantos píxeis valem os valores mais comuns em em?

Valor em emPai 16 px (predefinido)Pai 14 px (cartão)Pai 20 px (título)
0,25 em4 px3,5 px5 px
0,375 em6 px5,25 px7,5 px
0,5 em8 px7 px10 px
0,625 em10 px8,75 px12,5 px
0,75 em12 px10,5 px15 px
0,8 em12,8 px11,2 px16 px
0,875 em14 px12,25 px17,5 px
1 em16 px14 px20 px
1,125 em18 px15,75 px22,5 px
1,25 em20 px17,5 px25 px
1,375 em22 px19,25 px27,5 px
1,5 em24 px21 px30 px
1,625 em26 px22,75 px32,5 px
1,75 em28 px24,5 px35 px
1,875 em30 px26,25 px37,5 px
2 em32 px28 px40 px
2,25 em36 px31,5 px45 px
2,5 em40 px35 px50 px
2,75 em44 px38,5 px55 px
3 em48 px42 px60 px
3,5 em56 px49 px70 px
4 em64 px56 px80 px
4,5 em72 px63 px90 px
5 em80 px70 px100 px
6 em96 px84 px120 px
8 em128 px112 px160 px

Os três tamanhos do pai cobrem três situações: 16 px é a predefinição do navegador, 14 px encontra-o em cartões e tabelas de interface, e 20 px num título de secção.

PUBLICIDADE

Porque é que o mesmo valor em em dá píxeis diferentes?

O em mede-se face ao pai, e o pai tem por sua vez outro pai. Quando a mesma declaração font-size: 1.25em se repete em níveis sucessivos de aninhamento, cada nível multiplica o resultado do anterior. Ao fim de seis níveis, de 16 píxeis saem mais de 61.

Vê-se sobretudo em listas aninhadas, em menus com submenus e em fios de comentários, porque aí a estrutura cria os níveis sozinha. A tabela abaixo mostra cada passo junto ao cálculo, para que a origem de cada número fique à vista.

Daí a regra prática: o em encaixa onde um valor deva seguir o tamanho de texto do seu contexto mais próximo – o espaço à volta do texto de um botão, a indentação de uma lista, a largura de um campo de formulário. Para os tamanhos de texto de um sítio inteiro, o rem serve melhor, porque conta a partir da raiz do documento e dá sempre o mesmo valor por mais fundo que o elemento esteja.

Se procura precisamente essa previsibilidade, o cálculo cabe ao conversor de rem para píxeis, e uma medida da maqueta escrita em rem ao conversor de píxeis para rem.

Como é que o em se acumula com o aninhamento?

Nível de aninhamentoTamanho do paiResultado neste nívelCálculo
Primeiro16 px20 px16 × 1,25
Segundo20 px25 px20 × 1,25
Terceiro25 px31,25 px25 × 1,25
Quarto31,25 px39,06 px31,25 × 1,25
Quinto39,06 px48,83 px39,06 × 1,25
Sexto48,83 px61,04 px48,83 × 1,25

Seis níveis com a mesma declaração font-size: 1.25em, a contar dos 16 px predefinidos. A coluna do cálculo mostra de onde vem cada número.

Em, rem e o píxel lado a lado

Característicaemrempx
Ponto de referênciaTamanho de letra do elemento paiTamanho de letra do elemento htmlNenhum, é um valor absoluto
Valor predefinido1em = 16 px1rem = 16 px1 px = 1/96 de polegada
Com aninhamentoAcumula-se em cada nívelSempre o mesmo valorSempre o mesmo valor
Reação às definições de quem lêEscala com elasEscala com elasMantém-se igual
Dentro de uma media queryConta do tamanho de texto predefinidoConta do tamanho de texto predefinidoÉ um valor absoluto
Em modelos de correioTodos os programas testadosCerca de dois terços dos programasTodos os programas testados
Uso habitualEspaço à volta do texto, indentação de listaTamanhos de texto e escala de espaçamentoContornos, sombras, filetes

Sete das vinte e quatro perguntas feitas em torno desta pesquisa são na verdade sobre rem. Esta tabela esclarece a diferença.

PUBLICIDADE

Quando vai precisar desta conversão?

  1. Ler uma folha de estilos alheia

    Abre um projeto escrito em em e quer saber quanto mede um espaçamento. Escreva o tamanho do pai e leia o valor em píxeis.
  2. Depurar uma lista aninhada

    O texto do quarto nível cresceu para além do previsto. A tabela mostra o que dá a mesma declaração em cada nível.
  3. Comparar com a maqueta

    O design indica 24 píxeis e o código diz 1,5em. Uma multiplicação diz-lhe se os dois números descrevem o mesmo tamanho.
  4. Um modelo de correio

    Nos modelos de correio o em funciona em todos os programas testados, pelo que as medidas relativas assentam nele [3].

Converter outras unidades para Pixels

Explorar outros conversores de unidades

Fontes

  1. CSS Values and Units Module Level 4W3C
  2. font-sizeMDN Web Docs
  3. CSS unit: emCan I email

Todos os valores das tabelas foram calculados a partir das definições das unidades e verificados aritmeticamente antes da publicação. Os dados históricos e os nomes das unidades locais assentam nas fontes indicadas acima.

Última revisão do conteúdo: · escrito e verificado pela equipa Arteon

Perguntas frequentes

Quantos píxeis são 1em?

Com a predefinição do navegador, 1em são 16 píxeis. O número vem do tamanho de letra do pai, pelo que dentro de um cartão composto a 14 px esse mesmo 1em dá 14 píxeis, e num título de 20 px dá 20.

Quantos píxeis são 1,5em?

24 píxeis com um pai de 16 px, 21 píxeis com 14 px e 30 píxeis com 20 px. O valor 1,5em é um tamanho comum de título dentro de uma secção.

Quantos píxeis são 0,875em?

14 píxeis com um pai de 16 px. Este tamanho aparece sobretudo nas etiquetas dos campos de formulário e no texto de ajuda que fica por baixo.

Quantos píxeis são 2em?

32 píxeis com um pai de 16 px, 28 com 14 px e 40 com 20 px. Valores desta ordem descrevem o espaçamento entre secções mais do que um tamanho de texto.

Qual é a diferença entre em e rem?

O em refere-se ao tamanho de letra do pai, pelo que ao aninhar os valores se multiplicam: seis níveis com 1.25em transformam 16 píxeis em mais de 61. O rem refere-se ao elemento html e dá o mesmo resultado em todo o documento, por mais aninhado que um elemento esteja.

Quando usar em e quando rem?

O em encaixa onde uma medida deva seguir o texto do seu contexto mais próximo: o espaço à volta do texto de um botão, a indentação de uma lista, a largura de um campo. O rem encaixa nos tamanhos de texto e na escala de espaçamento de um sítio inteiro, porque o resultado se mantém previsível.

Porque é que o mesmo valor em em dá píxeis diferentes?

Porque o ponto de referência muda com o sítio do documento. Um 1em dentro de um parágrafo de 16 px são 16 píxeis, e dentro de um título de 32 px são 32. O conversor acima aceita o tamanho do pai precisamente para responder por um sítio concreto.

O em no padding funciona como em font-size?

Na propriedade font-size o em refere-se ao pai. Nas restantes propriedades do mesmo elemento, padding e margin incluídos, refere-se ao tamanho de letra desse elemento. Um elemento com font-size: 1.5em e um pai de 16 px tem texto de 24 px, pelo que o seu padding: 1em dá também 24 píxeis.

Como converter em para píxeis num programa de design?

O Figma, o Photoshop e o Illustrator contam em píxeis ou em pontos e não têm a unidade em. O em surge apenas do lado do código e nas ferramentas web, por isso uma medida da maqueta converte-se à parte: com este conversor ou no separador Computed das ferramentas de programador do navegador.

O em funciona nos modelos de correio?

Sim, em todos os programas de correio testados. A unidade rem tem aí um suporte de cerca de dois terços e não funciona em nenhuma versão do Outlook, nem no Windows nem no macOS, por isso as medidas relativas dos modelos assentam no em.

Quantos em é 1 píxel?

Com um pai de 16 px um píxel é 0,0625em. Vale a pena conhecer alguns pares no sentido inverso: 12 px são 0,75em, 14 px são 0,875em, 20 px são 1,25em e 24 px são 1,5em.

O em influencia a acessibilidade?

Sim. As medidas escritas em em crescem com o tamanho de texto definido no navegador, pelo que o layout responde a quem lê. Para os tamanhos de texto de um sítio inteiro o rem dá o mesmo benefício, com a vantagem de não se acumular ao aninhar.

em para px – Arteon

Ajude-nos a melhorar as nossas ferramentas

Tem uma ideia para uma função, encontrou um erro ou quer propor outra ferramenta? Escreva-nos, respondemos em menos de 24 horas.

PUBLICIDADE