|
|
|
|
|
by chii
703 days ago
|
|
> It's trickier if the goal is "I want to allow <strong> and <em> tags in the string to be rendered as bold and italic, but I don't want scripts to execute" yes, because you're no longer allowing HTML, but allowing something similar to HTML but not (and which subset is different for different people/project etc). So i personally would move up the requirements chain, where the requirement to allow "html" should be scrapped, and instead changed to be something like markdown - a pre-existing formatting protocol that does not have the undesirable aspects. Or, as an alternative, host the html (without the stripping of "undesirables") in a separate iframe, on a totally different domain, and rely on the browser's cross-origin protection to prevent undesirable scripts or data leaks. |
|
This would be how I would choose to solve this, if the option was available.
But sometimes people do want some HTML compatibility for legit reasons.