Hallo,
Es kommt darauf an, was das Ziel ist. Will man ein CMS erstellen, sollte man davon ausgehen können, dass nur administrativ berechtigte Nutzer Texte erstellen können. Dann kann man die ganze Sache etwas gelassener angehen. Man möchte in aller Regel sogar dem Anwender die Freiheit geben, sich beliebig zu entfalten. Erstellt man hingegen etwas, das unbekannte Nutzer befüllen sollen, dann kann man nicht vorsichtig genug sein.
wie machen die großen CMS System wie z.B. Joomla oder Wordpress dieses? Verzichten die komplett auf htmlspecialchars? In den zwei genannten System habe ich eigentlich alle Freiheiten solange ich den eingebauten Editor nutzte. Wenn ich mir den Quelltext anschauen, habe ich oftmals Inline-CSS.