Menu

Superíndice y subíndice en HTML: etiquetas sup y sub

Escribe texto en superíndice con <sup> y en subíndice con <sub>: exponentes, ordinales, llamadas a notas al pie y fórmulas químicas. Aprende los usos habituales, cómo evitar que separen las líneas y cuándo encaja mejor un carácter Unicode o MathML.

Esta página incluye editores ejecutables: edita, ejecuta y ve el resultado al instante.

Cómo escribir un superíndice en HTML

Envuelve el texto elevado en <sup>. El navegador lo muestra más pequeño y por encima de la línea. Su pareja <sub> muestra el texto más pequeño y rebajado:

<sup> y <sub> son elementos en línea y pueden contener otros elementos en línea, así que 2<sup>n+1</sup> o x<sub><i>i</i></sub> también funcionan.

Usos habituales

QuieresEscribeResultado
Un exponente10<sup>3</sup>10 elevado a 3
Un ordinal2<sup>nd</sup>2nd con las letras elevadas
Una llamada a nota al pietext<sup><a href="#n1">1</a></sup>Un 1 elevado y clicable
Una fórmula químicaC<sub>6</sub>H<sub>12</sub>O<sub>6</sub>Glucosa
Un índice o una basex<sub>1</sub>, log<sub>2</sub>1 y 2 rebajados
Una marca comercialBrand<sup>TM</sup> o Brand™TM elevado

Usa las etiquetas cuando la posición forma parte del significado: m<sup>2</sup> y m2 son cosas distintas. Para texto que solo tiene un estilo pequeño (una etiqueta, una insignia), usa CSS.

Notas al pie con sup

Una llamada a nota al pie es un enlace en superíndice a una nota al final. Dale a cada nota un id y apunta el enlace hacia él:

Haz clic en un número para saltar a su nota, y en "Back" para volver. Quitar el subrayado del enlace pequeño deja el párrafo limpio, y el color del enlace sigue indicando que es clicable.

Mantener el interlineado uniforme

Por defecto, un <sup> o un <sub> puede hacer que su línea sea más alta que las de alrededor, así que un párrafo con algunos exponentes se ve con un espaciado irregular. Poner line-height: 0 en ellos lo arregla:

La caja gris es más alta porque las líneas dos y cuatro se separaron. En la caja verde todas las líneas tienen la misma altura. Añade esa regla una vez a tu hoja de estilos base y olvídate.

Caracteres Unicode y MathML

Para algunos casos comunes hay caracteres ya hechos: ² (&sup2;), ³ (&sup3;), ¹ (&sup1;), ™ (&trade;) y ½ (&frac12;). No necesitan etiqueta ni afectan al interlineado, pero solo existen para algunos dígitos y letras.

Para fórmulas de verdad (fracciones, raíces, exponentes de exponentes), usa MathML, que los navegadores actuales muestran de forma nativa:

<msup> recibe una base y un exponente; <msub> hace lo mismo con los subíndices. Para un único exponente dentro de una frase, <sup> es más sencillo.

Errores comunes

  • Usar <sup> para hacer texto pequeño. También eleva el texto y les dice a los lectores que es un superíndice. Usa font-size para texto pequeño.
  • Interlineado irregular. Añade sup, sub { line-height: 0; }.
  • Escribir x^2 o H2O en el texto final. Usa x<sup>2</sup> y H<sub>2</sub>O para que el contenido se lea bien.
  • Llamadas a notas al pie demasiado pequeñas para tocarlas. En los teléfonos, un solo dígito elevado es un objetivo diminuto. Añade algo de padding a sup a, o pon las notas cerca del texto.

Preguntas frecuentes

¿Cómo escribo un superíndice en HTML?

Envuelve el texto elevado en <sup>: x<sup>2</sup> muestra x al cuadrado, 1<sup>st</sup> un ordinal. El navegador lo dibuja más pequeño y por encima de la línea base.

¿Cómo escribo un subíndice en HTML?

Usa <sub>: H<sub>2</sub>O para el agua, x<sub>1</sub> para un índice. Se dibuja más pequeño y por debajo de la línea base.

¿Cómo escribo x al cuadrado en HTML?

Con x<sup>2</sup> o con el carácter ya hecho x², que también puedes escribir como la entidad &sup2;. El carácter sirve para cuadrados y cubos; <sup> funciona para cualquier exponente, como 2<sup>n+1</sup>.

¿Por qué <sup> deja el interlineado irregular?

El texto elevado puede hacer que su línea sea más alta que las demás del párrafo. Se arregla con sup, sub { line-height: 0; }, que evita que añadan altura a la línea.

¿Puedo usar CSS en lugar de <sup>?

vertical-align: super con un font-size más pequeño se ve igual, pero <sup> y <sub> tienen significado: "m2" y "m<sup>2</sup>" son valores distintos. Usa las etiquetas cuando la posición elevada o rebajada forma parte del contenido.

Coddy programming languages illustration

Aprende a programar con Coddy

COMENZAR