47 lines
1.7 KiB
Plaintext
47 lines
1.7 KiB
Plaintext
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
|