Thread:Feedback/Stopping bad signatures?/Skalman (4)

So, looking at the discussion this is my proposal regarding signatures:

There are a couple ways of doing bad stuff with signatures:
 * Adding odd HTML to blank a whole page, change the layout, be distracting etc
 * Saying you're someone else

Ideas for prevention:
 * Require the signature to include a link to my user page (or talk page). This also has the advantage of making it harder to say you're someone else. One thing that might be hard to check is if we'd accept external http links to the talk page (like [ this])
 * If it's possible, remove all HTML block elements.
 * If it's possible, only accept the following CSS properties: color, background (only for background color, and the property background-color), font (and font-size, font-weight, font-style, text-decoration) , vertical-align, border (?), outline (?) (anything else I missed that could be useful and not too dangerous?)
 * Currently the max length for a signature is 255 chars. Decreasing that makes it harder create strange signatures. (but we still want to enable nice signatures, so maybe not)
 * In CSS, set the signature container div to have  and some fixed (or max) height. This would see that too big signatures would be cut off and not cover any other part of the page. (doing this we could possibly accept most CSS properties in signatures and instead use a blacklist, including display, position, z-index (?))

Dealing with bad signatures:
 * When a user is blocked his/her signature could get reset, and while he/she is blocked he/she can't change the signature. That's simple, admins don't have to learn anything new, and it makes it easier to identify the vandal.
 * I don't think admins should be able to reset a signature directly. That would complicate things and I think it could easily be coupled with blocking a user.
 * I don't think anybody should be able to edit another user's signature. That's just complicating things further.
 * A possibility/setting to view pages without custom signatures. I'm not sure this is a good idea, though, since it means making mostly unnecessary options.

These my ideas so far. Any comments?