diff --git a/mozilla/content/html/document/src/nsHTMLDocument.cpp b/mozilla/content/html/document/src/nsHTMLDocument.cpp
index 0e7c51e634a..ab68d6ebac8 100644
--- a/mozilla/content/html/document/src/nsHTMLDocument.cpp
+++ b/mozilla/content/html/document/src/nsHTMLDocument.cpp
@@ -1344,9 +1344,13 @@ nsHTMLDocument::CreateElement(const nsAString& aTagName,
nsIDOMElement** aReturn)
{
*aReturn = nsnull;
+ nsresult rv;
- nsresult rv = nsContentUtils::CheckQName(aTagName, PR_FALSE);
- NS_ENSURE_SUCCESS(rv, rv);
+ // if we are in quirks, don't validate the tag name
+ if (mCompatMode != eCompatibility_NavQuirks) {
+ rv = nsContentUtils::CheckQName(aTagName, PR_FALSE);
+ NS_ENSURE_SUCCESS(rv, rv);
+ }
nsAutoString tmp(aTagName);