Conversor de Unidades de CSS

Converta PX, REM, EM e VH com preview em tempo real para desktop e mobile.

Desktop

VH
REM + EM {{ cssUnitsPxFromRem().toFixed(2) }}px / {{ cssUnitsPxFromEm().toFixed(2) }}px

Mobile

VH
REM + EM {{ cssUnitsPxFromRem().toFixed(2) }}px / {{ cssUnitsPxFromEm().toFixed(2) }}px

Descrição

O CSS1 de 1996 chegou com apenas seis unidades de medida: `px`, `pt`, `pc`, `cm`, `mm` e `in` — todas absolutas, fixas, pensadas para o mundo da impressão transposto para a tela. O CSS3 expandiu esse vocabulário drasticamente com unidades relativas ao viewport como `vw` e `vh`, e com o `rem` que respeita a raiz do documento. Mas foi o cenário mobile que forçou a criação das unidades mais recentes: `dvh`, `svh` e `lvh`, introduzidas para resolver o problema clássico do endereço do navegador mobile que aparece e desaparece ao rolar a página, bagunçando layouts que usavam `100vh` como altura total da tela. Hoje o CSS tem mais de 20 unidades de medida, cada uma com uma semântica precisa e casos de uso distintos.

Na prática do dia a dia, o problema não é conhecer todas as unidades — é converter entre elas num fluxo de trabalho onde ferramentas de design, código e sistemas de componentes falam línguas diferentes. Um arquivo do Figma entrega especificações em `px`. O design system da empresa define a escala tipográfica em `rem`. O layout usa breakpoints em `em` para compatibilidade máxima com browsers antigos. E o novo componente de hero precisa ocupar exatamente a altura visível da janela no mobile sem ser afetado pela barra de endereço. Ter um conversor com contexto visual imediato elimina a necessidade de abrir o console do browser e fazer cálculos manualmente a cada decisão de layout.

Dois pontos que o WCAG — as diretrizes de acessibilidade da web — destacam merecem atenção especial. Primeiro: evitar `px` para tamanhos de fonte, porque o `px` é a única unidade que não respeita a preferência de tamanho de texto configurada pelo usuário no browser ou no SO. Segundo: `100vw` inclui a largura da barra de rolagem vertical quando ela está visível, o que pode causar overflow horizontal em páginas com conteúdo exatamente na largura do viewport — um bug sutil que aparece só quando o conteúdo é longo o suficiente para a barra aparecer. E para o mobile, `100dvh` em vez de `100vh` é a forma moderna de garantir que o layout ocupe exatamente a área visível independentemente do comportamento da interface do browser.

Detalhamento técnico

Pontos frequentes

  • Para que serve esta ferramenta?: Ela roda 100% no seu navegador: útil para validar, formatar ou converter dados no dia a dia de desenvolvimento.
  • Meus dados são enviados a algum servidor?: O processamento é feito localmente via JavaScript. Não armazenamos o conteúdo que você cola nas caixas de texto.
  • Posso usar em produção ou para dados reais?: Use por sua conta e risco. Para segredos (senhas, tokens), prefira ambientes controlados e políticas da sua empresa. E lembre sempre de revisar os conteúdos gerados. Nunca confie cegamente nas coisas que vê na internet.

Trecho para testar

  • Há também o bloco "Exemplo de Código" com o trecho completo; use esse texto rápido para colar nos campos e validar: Exemplo rápido — Base 16px: 24px = 1.5rem = 1.5em Viewport 900px: 10vh = 90px

Guia da ferramenta

  • O que são unidades absolutas e relativas no CSS Unidades absolutas (como px) representam um valor fixo no contexto de CSS pixels. Unidades relativas (como rem, em, vh, vw, %, ch, ex, vmin, vmax, svh, lvh, dvh) dependem de algum contexto: fonte raiz, fonte do elemento pai/atual, viewport ou tamanho do container.

  • PX, REM e EM na prática px é a unidade mais direta para bordas, sombras e ajustes finos. rem escala a partir do font-size do html, por isso ajuda a manter consistência global de tipografia e espaçamento. em escala pelo contexto local, sendo útil em componentes que devem crescer proporcionalmente ao próprio texto (por exemplo botões compostos).

  • VH e unidades de viewport vh representa porcentagem da altura da viewport (100vh ocupa toda a altura visível). Em mobile, barras do navegador podem alterar a área útil, então também existem svh, lvh e dvh para cenários com viewport dinâmica. vw segue a mesma lógica para largura.

  • Outras unidades importantes % depende da propriedade e do elemento de referência, ch aproxima a largura do caractere “0”, fr distribui espaço em CSS Grid, cm/mm/in/pt/pc existem para contextos de impressão e raramente são ideais para layout web responsivo.

  • O que a ferramenta faz Converte entre px, rem, em e vh, usando base tipográfica configurável e contexto de viewport. Também mostra preview visual em tempo real para desktop e celular, para você validar impacto de escala sem abrir outra aba.

  • Por que usar Acelera decisões de design system, documentação técnica e refatorações de CSS. Você visualiza imediatamente o efeito de trocar unidade fixa por relativa e reduz regressões em responsividade.

Exemplo de Código

Exemplo de código
Base 16px: 24px = 1.5rem = 1.5em
Viewport 900px: 10vh = 90px

Exemplo rápido

Base 16px: 24px = 1.5rem = 1.5em
Viewport 900px: 10vh = 90px

Perguntas frequentes

Para que serve esta ferramenta?

Ela roda 100% no seu navegador: útil para validar, formatar ou converter dados no dia a dia de desenvolvimento.

Meus dados são enviados a algum servidor?

O processamento é feito localmente via JavaScript. Não armazenamos o conteúdo que você cola nas caixas de texto.

Posso usar em produção ou para dados reais?

Use por sua conta e risco. Para segredos (senhas, tokens), prefira ambientes controlados e políticas da sua empresa. E lembre sempre de revisar os conteúdos gerados. Nunca confie cegamente nas coisas que vê na internet.