With my projects, I like to use DEFAULT_CONTENT_TYPE = 'application/xhtml+xml' in my settings.py file. I then use an XhtmlDegrader middleware, to gracefully degrade my pages to text/html to browsers that do not support this mimetype, such as IE.
Admin works 100% with the application/xhtml mime, I haven't had any other problems with it at all, except for the following bug:
If I am filling in a new entry, and I have a dropdown for a OneToMany relationship, if I hit the '+' icon next to the dropdown, I get a popup window where I can add a new entry. This works fine right upto the point when I click 'Save'. Now what it is supposed to do is close the popup, and refresh the parent page (which is fine under text/html), but under application/xhtml+xml it produces an XML error in Firefox:
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<script type="text/javascript">
opener.dismissAddAnotherPopup(window, 2, "Foo");
</script>
To fix, wrap inside a proper <html><body></body></html>
block, and the error should go away.
patched with minimal valid xhml structure, javascript elem.nodeName happens to be lowercase