1. Inicio
  2. Herramientas para desarrolladores
  3. Convertir px a rem

Conversor de px a rem

Convierte valores entre píxeles y rem con el tamaño de fuente raíz que use tu proyecto, o pega un bloque de CSS y cambia todos sus px por rem de una vez.

Convertir un bloque de CSS

Cómo usar el conversor

Comprueba primero el tamaño base: es el font-size del elemento html de tu proyecto. Si no lo has cambiado, es 16 px. Escribe un valor en píxeles para obtener los rem, o en rem para obtener los píxeles: ambos campos se sincronizan. Para migrar una hoja de estilos, pega el CSS en el segundo bloque y copia el resultado; los valores en px de las media queries también se convierten, aunque allí rem y em siempre se calculan con el tamaño predeterminado del navegador, no con el de tu html.

Fórmula

rem = px ÷ tamaño base · px = rem × tamaño base

Con la base de 16 px: 24 px = 24 ÷ 16 = 1,5 rem; 0,875 rem = 0,875 × 16 = 14 px. En el código CSS los decimales se escriben siempre con punto: 1.5rem.

Tabla de equivalencias px a rem

Píxelesrem (base 16 px)rem (base 10 px)
1 px0,0625 rem0,1 rem
2 px0,125 rem0,2 rem
4 px0,25 rem0,4 rem
8 px0,5 rem0,8 rem
10 px0,625 rem1 rem
12 px0,75 rem1,2 rem
13 px0,8125 rem1,3 rem
14 px0,875 rem1,4 rem
15 px0,9375 rem1,5 rem
16 px1 rem1,6 rem
18 px1,125 rem1,8 rem
20 px1,25 rem2 rem
22 px1,375 rem2,2 rem
24 px1,5 rem2,4 rem
28 px1,75 rem2,8 rem
32 px2 rem3,2 rem
36 px2,25 rem3,6 rem
40 px2,5 rem4 rem
48 px3 rem4,8 rem
56 px3,5 rem5,6 rem
64 px4 rem6,4 rem
72 px4,5 rem7,2 rem
96 px6 rem9,6 rem

El truco del 62,5 %

Algunos proyectos ponen html { font-size: 62.5%; } para que 1 rem valga 10 px y las cuentas sean inmediatas (24 px = 2,4 rem). Funciona y respeta la preferencia del usuario, porque es un porcentaje; pero obliga a redefinir el tamaño del texto del body (por ejemplo, 1.6rem) y puede confundir a quien herede el código o use componentes de terceros pensados para base 16. Con el conversor puedes trabajar con base 16 sin hacer cálculos.

rem, em, px y otras unidades

  • px: unidad fija. Adecuada para bordes finos, sombras y detalles que no deben escalar.
  • rem: relativa a la raíz. Ideal para tamaños de texto, márgenes, rellenos y espaciados generales.
  • em: relativa a la fuente del propio elemento. Útil para que el relleno de un botón crezca con su texto.
  • %, vw, vh: relativas al contenedor o a la ventana; para anchos de diseño. Si necesitas mantener proporciones de imágenes o vídeos, usa la calculadora de relación de aspecto.

Cuando termines de convertir, puedes reducir el tamaño del archivo con minificar CSS. Para radios y sombras, los generadores de border-radius y de sombras CSS te dan el código listo.

Errores comunes

  • Poner el font-size del html en px (html { font-size: 16px; }): anula la preferencia de tamaño del usuario. Usa un porcentaje o no lo declares.
  • Convertir bordes de 1 px: 0,0625 rem puede renderizarse como 0 o 2 píxeles según el zoom. Mantén los bordes finos en px.
  • Usar em en elementos anidados sin darse cuenta: una lista dentro de otra con font-size: 0.9em se hace cada vez más pequeña.

Preguntas frecuentes

¿Cuántos px es 1 rem?

Por defecto, 16 px, porque es el tamaño de fuente predeterminado de los navegadores. Si el usuario o tu CSS cambian el tamaño de la raíz (html), 1 rem pasa a valer ese nuevo tamaño.

¿Cuál es la fórmula para pasar de px a rem?

rem = px ÷ tamaño base. Con base 16: 24 px ÷ 16 = 1,5 rem. Y al revés, px = rem × tamaño base.

¿Qué diferencia hay entre rem y em?

rem es relativo al tamaño de fuente del elemento raíz (html), siempre el mismo en toda la página. em es relativo al tamaño de fuente del propio elemento o de su padre, por lo que se acumula al anidar elementos.

¿Por qué usar rem en lugar de px?

Porque respeta el tamaño de letra que el usuario configura en su navegador. Si alguien con baja visión elige letra grande, los textos y espacios en rem crecen en proporción; los definidos en px no.