When the Internet Explorer team fixed the CSS parser to no longer support used hacks they did that quite literally. They hacked the parser to no longer support two used hacks. Or something in that direction. Below a list of documents that you can load in Internet Explorer. You could use the Live DOM Viewer to run them.
<!doctype html><style> body { `background:red
<!doctype html><style> body { ~background:red
<!doctype html><style> body { !background:red
<!doctype html><style> body { @background:red
<!doctype html><style> body { #background:red
<!doctype html><style> body { $background:red
<!doctype html><style> body { %background:red
<!doctype html><style> body { ^background:red
<!doctype html><style> body { &background:red
<!doctype html><style> body { *background:red
<!doctype html><style> body { (background:red
<!doctype html><style> body { )background:red
<!doctype html><style> body { =background:red
<!doctype html><style> body { +background:red
<!doctype html><style> body { [background:red
<!doctype html><style> body { ]background:red
<!doctype html><style> body { {background:red
<!doctype html><style> body { |background:red
<!doctype html><style> body { ,background:red
<!doctype html><style> body { <background:red
<!doctype html><style> body { .background:red
<!doctype html><style> body { >background:red
<!doctype html><style> body { /background:red
<!doctype html><style> body { ?background:red
Now I think of it. I already posted this list of characters before. The reason the proof passes in Internet Explorer is just because the rule contained the characters -
and _
which are both disallowed in the new Internet Explorer. Oh well.