Etiqueta strike en HTML: obsoleta y diferencias con s y del
La etiqueta <strike> está obsoleta y no debe utilizarse en páginas nuevas. Servía para mostrar texto tachado, por ejemplo un precio anterior; hoy se elige <s> para información que dejó de ser válida, <del> para contenido eliminado en una revisión o CSS para una decoración. Esta guía explica cómo reconocer su uso histórico y migrarlo. El HTML Living Standard incluye <strike> entre los elementos que los autores no deben usar.
Ejemplo histórico para reconocer strike
El siguiente bloque documenta código antiguo; no es una recomendación ni una demostración ejecutable:
<p>Antes: <strike>$500</strike>. Ahora: $400.</p>
Se pretendía mostrar $500 con una línea horizontal atravesándolo y $400 sin esa línea. La descripción histórica de HTML 4.01 presentaba <strike> como un estilo de texto ya desaconsejado. No registraba por sí mismo una eliminación editorial ni explicaba por qué había dejado de valer el precio.
Si cambias el texto encerrado, cambia el texto al que se aplica el efecto. Si retiras las etiquetas y conservas $500, el precio sigue en el párrafo y pierde el tachado propio del elemento; otras reglas CSS podrían mantenerlo.
Sintaxis y contexto históricos
En la DTD Transitional de HTML 4.01, <strike>…</strike> tenía apertura y cierre requeridos y admitía texto y elementos en línea. Podía aparecer dentro de un párrafo, donde se permitía ese contenido. No era un contenedor para párrafos o tablas ni un elemento de <head>.
No era un elemento vacío: escribir <strike /> no lo cerraba en HTML. Estos datos ayudan a leer archivos antiguos; no existe un contexto que vuelva conforme su autoría en HTML actual.
¿Uso s o del para reemplazar strike?
Elige según lo que comunica el texto, aunque los dos elementos suelan verse tachados:
<s>representa información que ya no es correcta o relevante, como un precio sustituido por una oferta. Su definición actual excluye las revisiones editoriales.<del>marca una eliminación del documento. Puede acompañarse de<ins>, que marca lo añadido, para conservar el historial de una corrección. Son elementos de edición del estándar.
Un precio anterior no necesita <del> solo porque cambia. Una frase retirada de una revisión no se convierte en información no vigente solo porque pueda verse con <s>.
¿Cómo tacho solo por diseño?
Aplica text-decoration: line-through al elemento apropiado. La propiedad de decoración de texto de CSS controla la apariencia; no declara que el contenido sea incorrecto ni que se haya eliminado.
Para un fragmento sin otro significado puedes usar <span> con una clase. Si el texto es un título, conserva su encabezado. No añadas <s> o <del> para conseguir únicamente esa línea.
Ejemplo completo de migración actual
Guarda este documento como tachado.html en UTF-8 y ábrelo en un navegador. Incluye todo el HTML y CSS necesario; no necesita servidor, recursos externos ni JavaScript. Los importes y la revisión son datos ficticios del ejemplo.
<!doctype html>
<html lang="es">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Tres motivos para una línea sobre el texto</title>
<style>
body {
margin: 0;
padding: 1rem;
font-family: system-ui, sans-serif;
line-height: 1.6;
color: #222222;
background-color: #ffffff;
}
main {
max-width: 60ch;
margin-inline: auto;
}
.linea-decorativa {
text-decoration: line-through;
}
</style>
</head>
<body>
<main>
<h1>Tres usos distintos del tachado</h1>
<h2>Precio de un cuaderno</h2>
<p>Precio anterior: <s>$500</s>. Precio actual: $400.</p>
<h2>Corrección de un aviso</h2>
<p>Revisión del 4 de octubre de 2026.</p>
<p>Horario eliminado: <del datetime="2026-10-04">17:00</del>.</p>
<p>Horario añadido: <ins datetime="2026-10-04">18:00</ins>.</p>
<h2>Portada de prueba</h2>
<p><span class="linea-decorativa">Cuaderno de ideas</span></p>
<p>La línea del nombre es una decoración de la portada.</p>
</main>
</body>
</html>
Verás tres apartados. El precio anterior y 17:00 tendrán normalmente tachado; 18:00 tendrá normalmente subrayado. El nombre del cuaderno tendrá la línea definida por nuestra clase. datetime no imprime una fecha: la revisión se muestra porque la hemos escrito en un párrafo.
Las tres soluciones no son intercambiables: el primer apartado comunica falta de vigencia, el segundo conserva una edición y el tercero solo cambia la presentación. Sustituir <strike> por la alternativa adecuada puede conservar una apariencia parecida mientras hace explícito el significado pertinente.
Atributos: HTML, CSS y metadatos
<strike> no tenía atributos específicos para configurar el tachado. Atributos comunes como id, class y lang identificaban el elemento, asignaban clases o declaraban el idioma; no eran controles propios de esa línea.
text-decoration es una propiedad CSS, no un atributo HTML. style puede contener declaraciones CSS; desde JavaScript, element.style.textDecoration accede a esa declaración mediante el modelo de objetos CSS. El ejemplo no necesita scripts para mostrarla.
Los atributos opcionales cite y datetime de <del> y <ins> aportan metadatos sobre el cambio: una URL que lo explica y su fecha, respectivamente. No pertenecen a <strike> ni generan automáticamente un enlace o una fecha visibles.
Comprobación y errores frecuentes
- Abre el archivo a anchura de móvil y escritorio. Comprueba los tres apartados y los rótulos «anterior», «actual», «eliminado» y «añadido».
- Desactiva JavaScript: el resultado debe seguir disponible porque no depende de scripts.
- Retira la clase
linea-decorativa: desaparece la línea del nombre, sin cambiar su significado. Retira el CSS del documento: el contenido y los rótulos permanecen; el navegador conserva normalmente sus estilos de<s>,<del>e<ins>. - Retira las etiquetas
<s>,<del>e<ins>conservando su texto. Se pierde el significado marcado por esos elementos, aunque los rótulos escritos sigan explicando qué dato es anterior o qué cambió.
No dependas de que un lector de pantalla anuncie el tachado. MDN documenta que <s> no se anuncia en la mayoría de configuraciones habituales. Los rótulos permiten entender el precio y la revisión sin interpretar la línea. Cambiar el CSS de <s> o <del> tampoco elimina su significado HTML.
¿Strike está obsoleta aunque todavía se vea tachada? Sí. Que un navegador interprete código antiguo no hace válida su autoría actual. Tampoco basta con reemplazar todas sus apariciones por <s> sin revisar la intención.
Compatibilidad y fuentes
Estado revisado el 4 de octubre de 2026: el estándar vigente mantiene <strike> como elemento obsoleto. MDN describe su efecto histórico y ofrece los datos de compatibilidad, que deben distinguirse de su validez para documentos nuevos. Las fuentes de HTML 4.01 describen el pasado; las secciones actuales sobre <s>, <del> y CSS explican la migración. Comprueba los estilos en los navegadores del proyecto: la apariencia predeterminada puede cambiar por sus hojas de estilo o por las tuyas.