Si eres desarrollador, seguro que en algún momento has pensado: Bah, strong y b son lo mismo, los dos ponen negrita. Error. No son lo mismo. Y esta confusión, aunque parezca pequeña, puede afectar la accesibilidad de tu sitio, su SEO e incluso la forma en que los usuarios interpretan el contenido.
En desarrollo web no solo importa cómo se ve algo, sino también qué significa en el contexto del HTML. Ahí es donde entra la magia del HTML semántico.
strong: el énfasis con sentido
La etiqueta strong no está ahí solo para hacer bonito. Sirve para darle importancia real a un texto. Es decir, no solo cambia la apariencia, sino que le dice a Google, a los lectores de pantalla y a otros sistemas:
Oye, este texto es importante para entender el contenido.
- Función: añade significado, no solo estilo.
- Apariencia por defecto: negrita.
- Accesibilidad: los lectores de pantalla lo leen con más énfasis.
- SEO: puede dar más relevancia a esa parte del texto.
Ejemplo práctico:
<!-- Bloque de código eliminado por incompatibilidad -->

Aquí no solo estamos resaltando imprescindible, estamos diciendo que es una palabra clave para el mensaje.
b: solo un cambio visual
La etiqueta b es más simple. Su única misión es poner en negrita el texto, pero sin transmitir que tenga más importancia semántica.
- Función: destacar visualmente sin cambiar el significado.
- Apariencia por defecto: también negrita.
- Accesibilidad: ningún énfasis extra para lectores de pantalla.
- SEO: no añade relevancia.
Ejemplo práctico:
<!-- Bloque de código eliminado por incompatibilidad -->

Aquí, Mejor está en negrita solo porque se ve bien, no porque tenga un peso especial en el mensaje.

Cómo decidir cuándo usar cada uno
Regla rápida que uso en mis proyectos:
- Usa strong si el texto tiene un papel importante en el mensaje o en el contexto.
- Usa b si solo quieres destacar algo por estética.
Otros formatos útiles
Si quieres resaltar texto pero de otras formas:
- em: Énfasis leve, normalmente en cursiva, con valor semántico.
- mark: Resaltado visual como con marcador.
- i: Cursiva sin valor semántico, solo estilo.
¿Y si uso CSS para poner negrita?
Claro que puedes hacer:
<!-- Bloque de código eliminado por incompatibilidad -->
Pero si lo haces, no estarás dando contexto semántico. Es decir, para los robots y lectores de pantalla será texto común. Así que, si quieres que algo tenga peso real en la comunicación, usa strong.
Como programadores, nuestro trabajo no es solo hacer que funcione o hacer que se vea bien. Es escribir código que comunique tanto a humanos como a máquinas. Elegir entre strong y b no es un detalle menor: es una decisión que impacta en accesibilidad, SEO y buenas prácticas.
Si quieres que tu web sea entendida, accesible y profesional, dale a cada etiqueta el lugar que le corresponde.