Почему этот код XHTML-MP не проходит валидацию W3C?
-
29-09-2019 - |
Вопрос
Пример Википедии XHTML-MP.:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.1//EN"
"http://www.openmobilealliance.org/tech/DTD/xhtml-mobile11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>Hello</title>
</head>
<body>
<p>Hello <a href="http://example.org/">world</a>.</p>
</body>
</html>
Это терпит неудачу Валидация W3C с ошибкой Ввод не является правильным UTF-8, укажите кодирование! Байты: 0xa9 0x20 0x32 0x30
Даже если вы добавите <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
И скажите Validator это UTF8, это дает эту ошибку.
Если Doctype XHTML-MP удален, он работает нормально. В чем дело?
Решение
Проблема с внешним DTD. Если вы измените Doctype на это, он подтверждает:
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN"
"http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
Другие советы
http://mobiready.com/launch.jsp?locale=en_en Проверяет это хорошо. Странный
Также вам не нужно использовать 1.1, чтобы использовать JavaScript. Хотя он не проверял бы проверять W3,
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">
Работает просто отлично со всеми телефонами, поддерживаемыми JavaScript.
Не связан с StackOverflow