According to MSDN, all I need to force standards compliant mode is to include the HTML 5 doctype:
http://msdn.microsoft.com/en-us/library/gg699338%28v=vs.85%29.aspx
And it works when the markup is served remotely. The problem is when I take identical markup and serve it up from an apache server running locally. IE9 defaults to quirks mode, and the compatibility view button goes away.
I do a lot of development locally, and it defeats the purpose if I can only test my code in IE when it's served remotely. Thanks in advance.
Use
<!DOCTYPE html>
and add
<meta http-equiv="X-UA-Compatible" content="IE=9">
to the <head>
section of your HTML page. It will force Internet Explorer to use IE standards mode.