Durante casi veinte años, el consejo de privacidad más repetido cabía en una sola frase: bloquea el JavaScript y cortarás el rastreo de raíz. Era un consejo sólido, porque las cookies, los píxeles de analítica y los módulos de fingerprinting dependían de ese lenguaje para funcionar. Lo apagabas y la maquinaria se detenía.

En 2026, ese consejo se ha quedado a medias. La industria publicitaria no luchó contra los bloqueadores de scripts: simplemente dejó de necesitarlos. Trasladó parte de su vigilancia a un lenguaje que tu navegador jamás cuestiona, porque lo considera puramente decorativo. Ese lenguaje es el CSS, el mismo que da forma, color y orden a cada página que abres.

Este artículo recorre cómo ocurrió ese traslado, qué puede hacer realmente el CSS cuando se usa para espiar, y dónde se puede cortar la conexión. Sin exagerar, sin alarmismo: solo lo que esta arquitectura hace técnicamente posible y por qué tus defensas habituales no la ven.

Cuando bloquear scripts dejó de bastar

El éxito de los bloqueadores de scripts tuvo una consecuencia incómoda. Cuanto mejor aprendieron los navegadores a vigilar el JavaScript de terceros, menos rentable se volvió esconder el rastreo ahí. Y la vigilancia, cuando una vía se cierra, no se jubila: se muda.

Se mudó al único rincón que los navegadores tratan con confianza absoluta. El CSS —las hojas de estilo en cascada— controla tipografías, espaciados, colores y disposición. Como se le considera "diseño" y no "código ejecutable", se le concede acceso sin restricciones para correr en tu navegador.

Un sensor que nadie inspecciona es exactamente lo que un intermediario de datos busca.

Ahí está el detalle que lo cambia todo. Una herramienta pensada para pintar botones puede, con la astucia suficiente, convertirse en un sensor.

El micro-rastreo que no ejecuta ni una línea de script

La técnica más extendida explota las llamadas pseudoclases de CSS, las instrucciones que definen cómo reacciona un elemento cuando interactúas con él. Las más conocidas son :hover (cuando pasas el ratón por encima) y :active (cuando pulsas).

Imagina la mecánica con un ejemplo concreto. Mueves el cursor sobre un artículo, sobre un anuncio o sobre un botón de "Cancelar suscripción". En ese instante, una regla de CSS oculta le ordena a tu navegador que cargue una imagen de fondo invisible alojada en el servidor de un intermediario.

Esquema de una petición de red invisible disparada por una regla de estilo
Lo que importa no es la imagen, sino la petición que la pide.

La imagen es lo de menos; lo que importa es la petición. Cuando tu navegador pide ese archivo, el servidor registra al vuelo tu dirección IP, la marca de tiempo y el elemento exacto sobre el que te detuviste. Has revelado un gesto físico —dónde dudaste, qué te llamó la atención— sin que se ejecutara una sola línea de JavaScript.

El resultado práctico es un mapa de tu atención. No de lo que clicaste, sino de lo que estuviste a punto de clicar, que a veces dice incluso más sobre ti.

Cómo las consultas @media interrogan tu hardware

El rastreo CSS no se limita a seguir el ratón. También extrae una huella de tu equipo aprovechando una función llamada consultas @media.

Los desarrolladores usan las @media queries con un fin legítimo y muy útil: que una web se vea bien tanto en un monitor enorme como en la pantalla de un móvil. La hoja de estilo pregunta por las características del dispositivo y adapta el diseño en consecuencia. Hasta ahí, todo correcto.

El problema aparece cuando esas mismas preguntas se usan como interrogatorio. El CSS incrustado en una página puede lanzar, a la vez, decenas de consultas muy específicas:

  • ¿Cuál es tu resolución exacta de pantalla y su relación de aspecto?
  • ¿Usas una pantalla táctil o un puntero físico de ratón?
  • ¿Tu sistema está en modo oscuro o en alto contraste?
  • ¿Qué profundidad de color tiene tu tarjeta gráfica?

Por cada respuesta que tu navegador ofrece, el CSS dispara un píxel de rastreo invisible distinto. Al combinar esas respuestas, el intermediario reconstruye una huella digital del equipo bastante precisa y estable, completamente fuera del radar de un bloqueador de scripts. Conviene ser exacto aquí: esto identifica tu configuración de máquina, no tu nombre. Pero una configuración lo bastante singular funciona, en la práctica, como una etiqueta que te sigue.

El keylogging sin scripts a través de selectores de atributo

La variante más inquietante de 2026 es el registro de pulsaciones sin una línea de script. Para entender cómo es posible, hay que recordar que muchas webs modernas usan frameworks dinámicos (como React o Vue) que reescriben el HTML en tiempo real mientras escribes.

El CSS malicioso aprovecha eso con los llamados "selectores de atributo", capaces de reaccionar al contenido concreto de un campo. La lógica, simplificada, es de una sencillez perturbadora.

Supón que empiezas a teclear tu correo o una contraseña en un formulario. La hoja de estilo está programada para responder a letras específicas. Si escribes una "a", el CSS solicita en segundo plano una imagen llamada track-a.png. Si escribes una "b", pide track-b.png. Letra a letra, el archivo de diseño va filtrando tu entrada hacia un servidor remoto, sin pasar por el botón de "Enviar" y sin tocar los mecanismos de seguridad que vigilan el JavaScript.

Conviene matizar el alcance, en línea con el resto de esta serie. Es una técnica exigente, condicionada por cómo esté construido cada formulario, y no equivale a afirmar que toda web la emplee. Lo honesto es decir esto: la arquitectura lo permite, y permitirlo ya es razón suficiente para cerrarle la puerta.

Por qué los bloqueadores antiguos y NoScript se quedan ciegos

Aquí está la parte frustrante. Las defensas en las que más confía la gente preocupada por su privacidad no fueron diseñadas para este frente, y por motivos que vale la pena entender.

No puedes, sin más, apagar el CSS. Si lo desactivas en los ajustes del navegador, la web moderna se vuelve inservible: las páginas se desmoronan en muros de texto plano, ilegibles y sin estructura. El propio lenguaje que te espía es el que hace que internet sea usable.

Las extensiones estrictas tampoco ayudan. Herramientas como NoScript vigilan, por definición, los scripts; como el CSS técnicamente no lo es, lo dejan pasar sin mirarlo, convencidas de que es un recurso inofensivo de diseño. Y el modo incógnito no cambia nada: una ventana privada sigue descargando imágenes de fondo y respondiendo a las consultas @media igual que cualquier otra, así que tu perfil se registra en el servidor remoto exactamente igual.

En resumen, estas herramientas no están averiadas. Simplemente vigilan una puerta por la que el rastreo ya no entra.

Cómo Total Adblock neutraliza el rastreo CSS

La conclusión se deduce sola del problema. Si no puedes bloquear el CSS y no puedes confiar en los bloqueadores de scripts, la defensa eficaz no debe fijarse en el tipo de archivo, sino en el comportamiento de red que ese archivo provoca.

Ese es el terreno en el que trabaja Total Adblock. Mediante filtrado de red declarativo, vigila las solicitudes salientes que dispara el motor de renderizado de tu navegador, sin importar si las origina un script o una hoja de estilo. No rompe el CSS ni desbarata el diseño de la página: eso dejaría la web inservible, justo lo que queremos evitar.

En su lugar, identifica las URL encubiertas y los servidores de telemetría que el CSS intenta contactar, y corta esa conexión concreta. La lógica es directa:

  • Si la imagen de fondo invisible no puede pedirse, no se registra tu gesto sobre el ratón.
  • Si el píxel de cada consulta @media no llega a su servidor, no se ensambla la huella de tu hardware.
  • Si la petición track-a.png no encuentra destino, no hay letra que filtrar.

La regla de diseño malicioso sigue ahí, dentro de la página, pero queda inerte: dispara peticiones que no van a ninguna parte. Y como el filtrado apunta a los endpoints de vigilancia y no a los servidores legítimos que sirven el contenido que viniste a ver, la web se sigue mostrando tal y como debe.

Seamos honestos con los límites, como en el resto de la serie. Bloquear en el origen no reescribe el CSS ajeno ni borra lo que algún servidor ya pudo registrar antes. Lo que hace es cerrar la salida hacia adelante, que en una fuga continua es precisamente la salida que importa.

Recupera tu espacio privado hoy

El giro del rastreo basado en scripts al rastreo basado en diseño no es un tecnicismo. Es un cambio de escondite: la vigilancia se mudó al único lenguaje que dabas por inofensivo, y de paso dejó obsoleto el consejo que llevabas años siguiendo. Por eso bloquear scripts o navegar de incógnito se queda corto: apuntan a una puerta que el rastreo ya no usa.

La solución no es renunciar al diseño web ni vigilar cada movimiento de tu cursor. Es asegurarte de que, cuando una hoja de estilo intente llamar a casa, no encuentre a nadie al otro lado. Corta esas conexiones en su origen y un simple :hover vuelve a ser solo eso: un gesto, no una entrada en tu perfil; una letra tecleada, no un archivo enviado a un servidor que nunca pediste contactar.

Deja que Total Adblock corte ese hilo y que tu navegador vuelva a ser lo que siempre debió ser: un espacio privado donde el diseño te sirve a ti, no a quien te observa.