Is HTML Purifier Strict or Transitional? A little bit of helpful guidance Despite the fact that HTML Purifier professes to support both transitional and strict HTML, it rejects a lot of attributes and elements that are actually, indeed, valid. You can investigate progress.html to find out precisely what we are doing to these *deprecated* attributes. However, users have found that Strict HTML imposes some quite unreasonable restrictions on certain things. The start and value attributes in ol and li (respectively) perhaps are the most contested. There's is currently no widely supported browser method short of JavaScript that can replace these two deprecated elements. It behooves us to allow these deprecated attributes when the output is transitional. Fortunantely, that's the only real bugger case. The others have near-perfect CSS equivalents, and were presentational anyway. However, the other question pops up: should we always convert these to the CSS forms when 1. the spec allows them anyway and 2. older browsers support them better? After all, the whole point about CSS is to seperate styling from content, so inline styling doesn't solve that problem. It's an icky question, and we'll have to deal with it as more and more transforms get implemented. As of right now, however, we currently support these loose-only constructs in loose mode: -
- mixed children in The changed child definitions as well as the ul.start li.value are the most compelling reasons why loose should be used. We may want offer disabling ,andby themselves. We may also want to offer no pre-emptive deprecated conversions. This all must be unified.