Forum Moderators: phranque
The file is using UTF-8 encoding, the meta tag sets the character set to UTF-8 too...but when I upload it to my client's server characters with umlauts (for example ü) don't display properly.
The document is XHTML 1.0 strict.
If I change the file encoding to ISO-8859-1 and the meta tag it works fine...why? On my local server it works either way...
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="no" lang="no"><head>
<title>An XHTML 1.0 Strict standard template</title>
<meta http-equiv="content-type"
content="text/html;charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
</head>
<body>
<p>Flygande bäckasiner söka strax hwila på mjuka tuvor.</p>
</body>
</html>
That file is saved as UTF-8, and the accented characters are not displaying properly.
Is it possible that the server is forcing everything to display as ISO-8859-1?
You could try installing the FireFox extension Live HTTP Headers, and see what it says. For this site, I notice
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
And your characters are rendering fine here, so it appears this could be the case.
AddDefaultCharset OFF
I hope this helps someone in the future. I should also point out that you should have the charset specified in each of your files if you are going to use AddDefaultCharset OFF. If you do not have a charset specified in each file you can use UTF-8 (or any other charset) instead of OFF.