Son un conjunto de caracteres que podrían tener problemas al interpretarse por clientes web, por ser confundidos con inicio o cierres de etiquetas como < y > o porque los dispositivos trabajen con codificaciones de caracteres no compatibles.
Los caracteres especiales tienen correspondencia en unos códigos de modo que, cuando queremos escribirlos en una página HTML tenemos que hacerlo utilizando dichos códigos.