О PHP и типе содержимого xHTML5

Поэтому, читая в W3C, я мог добавить директиву XML в начале моего файла, например так:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html>

Но мой файл должен быть динамическим, и поэтому я использовал расширение.php. Конечно я могу echo '<?xml version="1.0" encoding="UTF-8" ?>'; до DOCTYPE, но тип содержимого остается text/html и если я изменю его в моих заголовках PHP на application/xhtml+xml, cahrset=UTF-8 Мне предлагается загрузить файл. Я знаю, я мог бы просто использовать text/html Тип содержимого, но я хочу иметь по крайней мере действительный xHTML (и CSS). Я всегда следовал стандартам и привык к этому. Я не начну писать недействительный HTML/xHTML.

РЕДАКТИРОВАТЬ:

Вот код:

    header('Content-Type: application/xhtml+xml; charset=UTF-8');

РЕДАКТИРОВАТЬ 2:

<!-- ... -->
<noscript>
    <link href="./no-java-script.css.php" rel="stylesheet" type="text/css" media="all" />
    <meta http-equiv="refresh" content="0; url=/no-javascript.aspx" />
</noscript>
<!-- ... -->
<noscript>
    <div onload="return false;" class="no-script"><p>Sorry, your browser does not support JavaScript! Click <a href="/no-javascript.aspx" hreflang="en-US" class="show">here</a> if it doesn't redirect you automatically.</p></div>
</noscript>
<!-- ... -->

2 ответа

Посмотрите на этот документ:

http://www.webstandards.org/learn/articles/askw3c/sep2003/

Но некоторые браузеры не знают о application/xhtml+xml.

Действительно, и это одна из самых больших текущих проблем с принятием нового типа MIME, тем более что Internet Explorer его не распознает (по крайней мере, для любой версии до 6.x в Windows и Mac OS). Конечно, это общая проблема с внедрением новых технологий, и она обычно улучшается с течением времени.

Так что да, мы должны использовать application/xhtml+xml через несколько лет. В настоящее время это плохая идея, потому что не все широко используемые браузеры поддерживают ее.

Итак, мой совет: использовать в течение следующих 5 лет text/html, Хорошо, что поддержка Xp закончилась. Когда-нибудь, возможно, наступит день, последняя версия IE 6 вышла;)

Это правда, что вы должны echo строка объявления XML в PHP, когда значение php.ini short_open_tag является on или же 1 (который является стандартным и довольно распространенным). Итак, с этим все в порядке.

Что касается заголовка: application/xhtml+xml MIME-тип может быть правильным, но (как вы уже видели), некоторые браузеры не настроены для обработки этого типа сами, поэтому они предлагают его скачать. Существует множество дискуссий о том, как справиться с этим, см., Например, http://www.webstandards.org/learn/articles/askw3c/sep2003/ или введите "xhtml mime type" в свою любимую поисковую систему.

Другие вопросы по тегам