缺少W3C声明

时间:2012-08-07 09:48:43

标签: php html5 character-encoding w3c w3c-validation

我制作多语言网页,我使用HTML5,我收到错误,为什么我尝试在W3C验证:

Line 4, Column 11: No explicit character encoding declaration has been seen yet (assumed utf-8) but the document contains non-ASCII.

<title>Viešbutis Graikijoje</titl…

..但是我的标题包含utf-8字符集:

<!DOCTYPE html>
<html lang="en">
<head>
<title><?php echo $title?></title>
<meta name="robots" content="index, follow" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

我读了其他帖子,它说你需要使用utf-8字符集,但我确实使用它..我也试过了

    AddType 'text/html; charset=UTF-8' html

..在.htaccess文件中,但它不起作用。有任何想法吗?

2 个答案:

答案 0 :(得分:2)

<title>中有非ascii字符,但您的<meta>标记声明文档为UTF8尚未出现。

将内容类型<meta>标记移至<head>

中的第一个元素
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title><?php echo $title?></title>
<meta name="robots" content="index, follow" />

虽然.htaccess中的AddType指令是好主意(如果 if)从该目录提供的.html扩展名的每个单个文档都是HTML UTF8的字符集,W3验证器仍然希望您在文档中显式声明字符集。

另请注意,在编写XHTML时,它们将允许您在XML声明中声明它:

<?xml version="1.0" encoding="utf-8" ?>

答案 1 :(得分:0)

放置文字

<meta charset="utf-8"/>

之间的

<head></head> 

标记。

另外,检查文件是否使用UTF-8编码保存。检查你的编辑器。