mirror of
https://github.com/ezyang/htmlpurifier.git
synced 2024-11-14 01:08:41 +00:00
45 lines
1.6 KiB
Plaintext
45 lines
1.6 KiB
Plaintext
|
AutoFormat.RemoveEmpty
|
||
|
TYPE: bool
|
||
|
VERSION: 3.1.2
|
||
|
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.
|
||
|
</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 end, it will get removed; if HTML Purifier
|
||
|
made it empty, it will stay.
|
||
|
</p>
|