It's a good article, give you a "+1", LOL.
For additional information, please notice that "!important" only impacts properties (color, background) not selector (IDs, classes), it's different from others.
And always has one value, 1 or 0, so you won't get "2 1 0 0".
The comparison is from left to right, if they knows who is bigger, will ignore the rest.
"1 0 0 0" is always bigger than "0 255 255 255".
Browsers will take the biggest one, except there's a bug.
For example, on IE6:
div { height: 100px!important; height: 40px; }
IE6 will take the second one, 40px.
IE6 will ignore the "!important" in same rule.
This will work as expected:
div { height: 100px!important }
div { height: 40px; }
The result is 100px.