1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- AutoFormat.RemoveEmpty
- TYPE: bool
- VERSION: 3.2.0
- DEFAULT: false
- --DESCRIPTION--
- <p>
- When enabled, HTML Purifier will attempt to remove empty elements that
- contribute no semantic information to the document. The following types
- of nodes will be removed:
- </p>
- <ul><li>
- Tags with no attributes and no content, and that are not empty
- elements (remove <code><a></a></code> but not
- <code><br /></code>), and
- </li>
- <li>
- Tags with no content, except for:<ul>
- <li>The <code>colgroup</code> element, or</li>
- <li>
- Elements with the <code>id</code> or <code>name</code> attribute,
- when those attributes are permitted on those elements.
- </li>
- </ul></li>
- </ul>
- <p>
- Please be very careful when using this functionality; while it may not
- seem that empty elements contain useful information, they can alter the
- layout of a document given appropriate styling. This directive is most
- useful when you are processing machine-generated HTML, please avoid using
- it on regular user HTML.
- </p>
- <p>
- Elements that contain only whitespace will be treated as empty. Non-breaking
- spaces, however, do not count as whitespace. See
- %AutoFormat.RemoveEmpty.RemoveNbsp for alternate behavior.
- </p>
- <p>
- This algorithm is not perfect; you may still notice some empty tags,
- particularly if a node had elements, but those elements were later removed
- because they were not permitted in that context, or tags that, after
- being auto-closed by another tag, where empty. This is for safety reasons
- to prevent clever code from breaking validation. The general rule of thumb:
- if a tag looked empty on the way in, it will get removed; if HTML Purifier
- made it empty, it will stay.
- </p>
- --# vim: et sw=4 sts=4
|