ToolDeck

Formateador CSS

Formatea y embellece CSS con indentación adecuada

Prueba un ejemplo

Entrada CSS

CSS Formateado

Se ejecuta localmente · Es seguro pegar secretos
El CSS formateado aparecerá aquí…

¿Qué es el formateo de CSS?

El formateo de CSS es el proceso de añadir indentación, saltos de línea y espaciado consistentes a las hojas de estilo en cascada para que el código sea legible por personas. Los navegadores ignoran completamente el espacio en blanco en CSS. Una hoja de estilo minificada en una sola línea y una hoja ordenada con indentación producen exactamente el mismo resultado visual. La diferencia está en la legibilidad: el CSS formateado te permite revisar selectores, detectar puntos y coma ausentes y entender la cascada de un vistazo.

Un formateador CSS (también llamado CSS beautifier o pretty-printer) toma CSS comprimido o con estilo inconsistente y lo reescribe con indentación uniforme, una declaración por línea y colocación coherente de llaves. Esta es la operación inversa a la minificación, también denominada embellecimiento o pretty-printing. Mientras que la minificación elimina espacios en blanco para reducir el tamaño del archivo en producción, el formateo restaura la estructura para el desarrollo, la revisión de código y el mantenimiento del código fuente.

La especificación CSS (W3C CSS Syntax Module Level 3) define la gramática de las hojas de estilo, pero no dice nada sobre convenciones de espaciado. Las reglas de formateo son una decisión del equipo: tabuladores frente a espacios, indentación de 2 o 4 espacios, estilo de llaves, líneas en blanco entre bloques de reglas. Un formateador aplica la convención que elijas de forma coherente en todos los archivos. La mayoría de los equipos registra su elección en un archivo .prettierrc o .editorconfig.

¿Por qué usar este formateador CSS?

Pega cualquier CSS y obtén una salida correctamente indentada en milisegundos. Sin plugins que instalar, sin archivos de configuración que escribir, sin cuentas que crear.

Formateo instantáneo
La salida se actualiza mientras escribes o pegas. Obtienes el CSS formateado de inmediato, sin esperar a un paso de compilación ni ejecutar un comando en la terminal.
🔒
Procesamiento con privacidad
Todo el formateo se ejecuta localmente en tu navegador con JavaScript. Tu CSS nunca sale de tu dispositivo y nunca se envía a ningún servidor.
🎨
Indentación configurable
Elige entre indentación de 2 espacios, 4 espacios o tabuladores para adaptarte al estilo de código de tu proyecto. La salida está lista para pegarse directamente en tu código fuente.
📋
Sin inicio de sesión
Abre la página, pega tu CSS, copia el resultado. Sin registro, sin límites de uso, sin funciones restringidas. La herramienta completa está disponible en cada visita.

Casos de uso del formateador CSS

Desarrollo frontend
Cuando recibes CSS minificado de una librería de terceros o una CDN, fomatearlo te permite revisar los selectores y entender qué está sobreescribiendo en tus propias hojas de estilo.
Ingeniería backend
Las páginas renderizadas en servidor suelen incluir CSS crítico como una sola línea inline. Formatear ese CSS facilita auditar qué estilos están incluidos en el payload HTML inicial.
DevOps y pipelines de CI
Aplica un formateo CSS consistente en las pull requests comparando la salida del formateador con los archivos confirmados. El espaciado inconsistente genera diffs ruidosos que ocultan los cambios reales.
QA e investigación de errores
Al depurar un error visual, formatea el CSS calculado desde DevTools para identificar rápidamente qué propiedades se aplican y en qué orden de especificidad.
Migración de datos
Los gestores de contenido y los editores de correo electrónico almacenan CSS en campos de base de datos, a menudo sin espacios en blanco. Formatear el CSS extraído ayuda a verificarlo antes de volver a importarlo.
Aprendizaje de CSS
Los estudiantes que aprenden CSS pueden pegar ejemplos de tutoriales o respuestas de Stack Overflow y verlos formateados de manera consistente, lo que facilita seguir el anidamiento y la cascada.

Referencia de ordenación de propiedades CSS

La mayoría de los formateadores CSS no reordenan propiedades. Sin embargo, muchas guías de estilo recomiendan agrupar las propiedades relacionadas. La tabla a continuación muestra una convención de agrupación habitual utilizada por herramientas como el plugin order de Stylelint y CSScomb:

GrupoPropiedades de ejemploPropósito
Position & Layoutposition, display, float, clearDefines the element's rendering mode
Box Modelwidth, height, margin, paddingControls dimensions and spacing
Typographyfont-size, line-height, colorText styling properties
Visualbackground, border, box-shadowDecorative properties
Animationtransition, animation, transformMotion and transform effects
Misccursor, overflow, z-indexBehavioral and stacking properties

Esta agrupación es una convención, no un requisito de CSS. Los navegadores aplican las declaraciones según la especificidad y el orden de origen, independientemente de la posición de la propiedad dentro de un bloque de reglas. Un formateador se ocupa del espaciado y la indentación; la reordenación de propiedades es una tarea separada de linting que manejan herramientas como Stylelint.

Formateo CSS frente a minificación CSS

El formateo y la minificación son operaciones inversas, aplicadas en distintas etapas del desarrollo:

Formateador CSS (esta herramienta)
Añade indentación, saltos de línea y espaciado para hacer el CSS legible. Se usa durante el desarrollo y la revisión de código. Aumenta el tamaño del archivo pero no tiene ningún efecto en el renderizado del navegador. La salida está pensada para personas.
Minificador CSS
Elimina todo el espacio en blanco innecesario, los comentarios y la sintaxis redundante para reducir el tamaño del archivo. Se usa en builds de producción. La salida está pensada para navegadores y CDNs, no para lectura.

Ejemplos de código

Cómo formatear CSS mediante programación en diferentes lenguajes y entornos:

JavaScript (Prettier API)
import * as prettier from 'prettier'

const ugly = 'body{margin:0;padding:0}h1{font-size:2rem;color:#333}'

const formatted = await prettier.format(ugly, {
  parser: 'css',
  tabWidth: 2,
  singleQuote: true,
})
// → "body {\n  margin: 0;\n  padding: 0;\n}\n\nh1 {\n  font-size: 2rem;\n  color: #333;\n}\n"
Python (cssbeautifier)
import cssbeautifier

ugly = 'body{margin:0;padding:0}h1{font-size:2rem;color:#333}'

opts = cssbeautifier.default_options()
opts.indent_size = 2

formatted = cssbeautifier.beautify(ugly, opts)
# → "body {\n  margin: 0;\n  padding: 0;\n}\n\nh1 {\n  font-size: 2rem;\n  color: #333;\n}"
CLI (Prettier)
# Format a single file in place
npx prettier --write styles.css

# Format all CSS files in a directory
npx prettier --write "src/**/*.css"

# Check formatting without modifying files
npx prettier --check "src/**/*.css"

# Pipe minified CSS through stdin
echo "body{margin:0;padding:0}" | npx prettier --parser css
PHP (sabberworm/php-css-parser)
<?php
// composer require sabberworm/php-css-parser
require 'vendor/autoload.php';

use Sabberworm\CSS\Parser;
use Sabberworm\CSS\OutputFormat;

$input = 'body{margin:0;padding:0}h1{font-size:2rem;color:#333}';

$document = (new Parser($input))->parse();
echo $document->render(OutputFormat::createPretty());
// → body {
//     margin: 0;
//     padding: 0;
//   }
//   h1 {
//     font-size: 2rem;
//     color: #333;
//   }

Preguntas frecuentes

¿Cuál es la diferencia entre un formateador CSS y un linter CSS?
Un formateador CSS modifica únicamente el espacio en blanco: indentación, saltos de línea, espaciado alrededor de dos puntos y llaves. No modifica tus declaraciones CSS reales. Un linter CSS (como Stylelint) analiza tu código en busca de errores, malas prácticas y violaciones de estilo, y puede sugerir o corregir automáticamente problemas más allá del espaciado. Los equipos suelen usar ambos: el formateador para el espaciado consistente, y el linter para detectar errores.
¿El formateo de CSS cambia cómo se renderiza en el navegador?
No. Los navegadores analizan el CSS según el W3C CSS Syntax Module, que trata todo el espacio en blanco (espacios, tabuladores, saltos de línea) como separadores de tokens equivalentes. Añadir o quitar espacio en blanco entre declaraciones, selectores o valores no tiene ningún efecto en los estilos calculados. La única excepción es el espacio en blanco dentro de valores de cadena como content: "hola mundo", que el formateador conserva.
¿Cuántos espacios debo usar para la indentación en CSS?
Las dos convenciones más habituales son 2 espacios y 4 espacios. La guía de estilo de Google y el valor predeterminado de Prettier usan 2 espacios. Los estándares de codificación CSS de WordPress usan tabuladores. No hay diferencia de rendimiento. Elige lo que ya usa tu equipo, o lo que usa tu código JavaScript o HTML existente, y mantén la consistencia.
¿Puedo formatear SCSS, LESS u otros preprocesadores CSS con esta herramienta?
Esta herramienta formatea la sintaxis CSS estándar. SCSS y LESS comparten la mayor parte de la sintaxis de CSS, por lo que el código sencillo de preprocesadores suele formatearse correctamente. Sin embargo, las construcciones específicas de SCSS como @mixin, @include y los bloques de reglas anidados pueden no manejarse como se espera. Para SCSS, usa Prettier con el parser de SCSS o la extensión sass-formatter.
¿El formateo CSS es lo mismo que el embellecimiento CSS?
Sí. Los términos formateador CSS, CSS beautifier y CSS pretty-printer hacen referencia a la misma operación: añadir espacio en blanco consistente al código CSS. Las distintas herramientas usan nombres diferentes, pero la salida es la misma: CSS indentado y legible con una declaración por línea.
¿Por qué mi CSS formateado tiene un número de líneas diferente al original?
El CSS minificado o comprimido a menudo agrupa varias declaraciones en una sola línea u omite saltos de línea entre bloques de reglas. El formateador añade un salto de línea después de cada declaración y una línea en blanco entre bloques de reglas, lo que aumenta el número de líneas. El contenido CSS real (selectores, propiedades, valores) no cambia.
¿Debo confirmar en el control de versiones CSS formateado o minificado?
Confirma el CSS formateado. Los diffs del control de versiones están basados en líneas, por lo que el CSS formateado con una declaración por línea produce diffs limpios y revisables. El CSS minificado genera diffs de una sola línea imposibles de revisar. Ejecuta la minificación como un paso de compilación, no como formato del código fuente. Herramientas como PostCSS, cssnano o el plugin CSS de tu bundler manejan automáticamente la minificación en producción.