如何在HTML中正确显示德语字符?

时间:2009-01-08 09:35:43

标签: html unicode localization

我的网页包含德语字符,我在其中输入了文字 HTML标记,但浏览器以不同方式查看某些字符。我是否需要在HTML中包含任何内容以正确显示德语字符?

<label> ausgefüllt </label>

9 个答案:

答案 0 :(得分:61)

似乎你需要一些关于某些东西的基本解释,不幸的是大多数程序员都不能正确理解。

像HTML页面这样的文件会作为一系列字节保存并通过Internet传输,但您希望它们显示为字符。为了将字节转换为字符,您需要一组称为character encoding的规则。不幸的是,历史上出现了许多不同的字符编码来处理不同的语言。其中大多数都基于美国ASCII编码,但只要您有ASCII之外的字符(例如German umlauts),就需要非常小心使用哪种编码。

问题的根源在于,为了正确解码HTML文件,浏览器需要知道要使用的编码。你可以通过几种方式告诉它:

因此,您需要选择一种编码,使用该编码保存HTML文件,并确保以上面列出的至少一种方式声明该编码(如果您使用的是一个人该死的确定他们同意)。至于使用什么编码,德国人通常使用ISO/IEC 8859-15,但UTF-8是一个很好的选择,可以同时处理任何类型的非ASCII字符。

答案 1 :(得分:27)

UTF-8是你的朋友。

尝试

<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=utf-8">

并检查您的网络服务器在标头中发送的编码。

如果你使用PHP,你可以用这种方式发送你自己的标题(你必须在任何其他输出之前放置它):

<?php header('Content-Type: text/html; charset=utf-8'); ?>

另外,请仔细检查您是否以UTF-8保存文档。

答案 2 :(得分:7)

在博客文章 German characters encoding issue (2012-05-10)中试用解决方案:

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>

答案 3 :(得分:4)

您是否尝试过&uuml;(ü)和&Uuml;(Ü)?

您可以找到如何输入其他字母here

答案 4 :(得分:2)

听起来像是一个字符编码问题,因为该文件被保存为与网络服务器所说的不同的字符编码。

答案 5 :(得分:2)

我不喜欢使用HTML实体(比如%uuml;),只有当你的字符集出现问题时才需要它们。

简而言之:

正确的方法是修复你的角色。

简单的方法就是使用实体。你可能没有看到任何问题。

追踪字符集错误可能非常困难。如果你给我们一个网址,我们可以看到问题,我们可以给你一个很好的提示,看看哪里。

答案 6 :(得分:2)

声明<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=utf-8">

当保存文件时,例如在记事本中,选择保存为UTF-8而不仅仅是.txt。

这应该使角色正常。

答案 7 :(得分:2)

您可以尝试使用utf8_encode()或utf8_decode()函数。如果其中任何一个有效,请检查。

例如<?php echo utf8_encode('ausgefüllt'); ?>

希望它会奏效。

答案 8 :(得分:0)

enter image description here

使用UTF8保存为文件,并使用以下META:

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>