It's because you didn't declare it in the stylesheet. IE seems to be inferring what you want. In your stylesheet:
Code:
a.SideNav, a.SideNav:active, a.SideNav:visited {
...
}
Add:
And that will then work as you want it to in compliant browsers.
A link is an inline element meaning it only take as much space as it is big. You have to tell the browser to render the link as a block for it to stretch its presence the full width.