Centaur
23:56 06-01-2004 IE и XHTML
Internet Explorer не поддерживает XHTML.

Ему скармливаешь данные и говоришь, что
Content-Type: application/xhtml+xml
, и он не знает, что с ними делать, и предлагает сохранить в файл. Его просишь показать файл:
iexplore D:\tmp\index.xhtml
, и он показывает исходник в виде дерева.

Меняешь Content-Type на text/html и расширение на .html, и он показывает. Но это уже не есть полностью валидный XHTML 1.0, это есть слегка кривоватый (но рабочий) HTML 4.01.

В то же время Mozilla отлично отображает и то, и другое.

В то же время IE слегка поддерживает расширение Ruby Annotation (но не полностью по стандарту), а Mozilla ещё нет. Парадокс.

Время ещё не пришло.
Комментарии:
Anafay
05:15 07-01-2004
Если ты с этим работаешь, то не мог бы просветить дремучего меня, зачем обычно используют новомодные фишки? В чем существенное преимущество? Недостаток очевиден: баги, баги и баги. Но, если кто-то с этим работает, то, наверное, хочет получить нечто, оные баги компенсирующее. Что собой это нечто представляет?
Centaur
11:31 08-01-2004
Если ты с этим работаешь

Ну, не то чтобы я с этим работал (в значении «делать за деньги». Я это пробую, из интереса.

Недостаток очевиден: баги, баги и баги.

Это не баги, это отсутствие фич.

зачем обычно используют новомодные фишки?

Долго думал, как это выразить. Пришёл к такой формулировке: гибкости хочу, и отсутствия избыточности. В принципе, HTML 4.01 Strict в комбинации с CSS Level 1 мне это даёт. Полная отвязка логики от представления — логика в HTML, представление в CSS. HTML, содержащий тэги и атрибуты представления (<font>, <b>, color="#C0FFEE") не пройдёт тест на соответствие подмножеству Strict.

Выбор между HTML и XHTML — просто из личных предпочтений хотел бы выбрать XHTML, как более строгий. HTML черезчур много прощает кодеру.
tty01
07:16 02-03-2004
>Content-Type: application/xhtml+xml
Та же фигня. Пришлось добавить определение поддерживаемого Content-Type. Для тех, кто умеет (Mozilla например) - application/xhtml+xml, для IE - text/html
Centaur
14:14 02-03-2004
Это решение, но только серверное. То есть, бросить на сидюк кучку файлов и чтоб везде работало — не получится.

А я ещё хочу, чтобы работало и на Pocket IE, а у него HTML 3.2, никакой CSS, отсутствует мышь (во всяком случае, пригодная для эффекта <span title="ひと">人</span> ), и садистский DOM.

Видать, для desktop’ных браузеров и для карманных придётся писать раздельные шаблоны и собирать раздельные версии.
Гость
21:05 04-03-2004
Меняешь Content-Type на text/html и расширение на .html, и он показывает. Но это уже не есть полностью валидный XHTML 1.0, это есть слегка кривоватый (но рабочий) HTML 4.01.

Где ты увидел в спецификации XHTML, что content-type HTTP-заголовка должен быть установлен в application/xhtml+xml иначе это не XHTML?

HTTP-протокол к языку разметки XHTML никакого отношения не имеет, точно также, как и не имеют к нему отношения имена файлов в операционной системе.

Вот выдержка из спецификации "строгого" XHTML1.0
http://www.w3.org/TR/xhtml1/

A Strictly Conforming XHTML Document is an XML document that requires only the facilities described as mandatory in this specification. Such a document must meet all of the following criteria:

1. It must conform to the constraints expressed in one of the three DTDs found in DTDs and in Appendix B.

2. The root element of the document must be html.

3. The root element of the document must contain an xmlns declaration for the XHTML namespace [XMLNS]. The namespace for XHTML is defined to be http://www.w3.org/1999/xhtml. An example root element might look like:

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

4. There must be a DOCTYPE declaration in the document prior to the root element. The public identifier included in the DOCTYPE declaration must reference one of the three DTDs found in DTDs using the respective Formal Public Identifier. The system identifier may be changed to reflect local system conventions.

<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

5. The DTD subset must not be used to override any parameter entities in the DTD.

отредактировано: 04-03-2004 22:09 - Centaur