# trust(html) - [Signature](#signature) - [How it works](#how-it-works) - [Security considerations](#security-considerations) - [Scripts that do not run](#scripts-that-do-not-run) - [Avoid trusting HTML](#avoid-trusting-html) --- ### Signature `render(element, vnodes)` Argument | Type | Required | Description ----------- | -------------------- | -------- | --- `html` | `String` | Yes | A string containing HTML text **returns** | `Vnode` | | A trusted HTML [vnode](vnodes.md) that represents the input string [How to read signatures](signatures.md) --- ### How it works By default, Mithril escapes all values in order to prevent a class of security problems called [XSS injections](https://en.wikipedia.org/wiki/Cross-site_scripting). However, sometimes it is desirable to render rich text and formatting markup. To fill that need, `m.trust` creates trusted HTML [vnodes](vnodes.md) which are rendered as HTML. ```javascript var view = m("div", [ m.trust("