03.04.2008, 11:20
|
Профессор
|
|
Регистрация: 20.03.2008
Сообщений: 1,183
|
|
браузеры ничего никуда не переводят. они парсят, получая на выходе DOM.
больше повторять не буду.
пс: уточни, плиз, в гугле термины "валидный" и "правильно составленный".
Последний раз редактировалось tenshi, 03.04.2008 в 11:26.
|
|
03.04.2008, 11:37
|
Новичок на форуме
|
|
Регистрация: 19.02.2008
Сообщений: 9,177
|
|
Сообщение от tenshi
|
они парсят, получая на выходе DOM
|
При этом им все равно, что парсить, и при этом после обратной операции получается не XHTML. Вы не ответили: зачем нужен XHTML Valid и почему
Сообщение от tenshi
|
xhtml1.1 рулит
|
|
|
03.04.2008, 11:44
|
Интересующийся
|
|
Регистрация: 22.03.2008
Сообщений: 15
|
|
Сообщение от tenshi
|
> Он же с IE несовместим.
в каком это месте?
|
В нативном виде, как application/xhtml+xml. Трюк с XSLT лишь маскирует эту несовместимость - на выходе-то у нас фактически другой документ, являющийся обычным HTML (text/html)...
Сообщение от tenshi
|
http://www.w3.org/TR/xhtml11/conformance.html#uaconf в самом конце
|
Хм... никогда не обращал внимания, спасибо что указали, не знал, что документация сама себе противоречит). В Informative note, приведенной там по ссылке, четко сказано, что
Цитата:
|
The 'text/html' media type [RFC2854] is primarily for HTML, not for XHTML. In general, this media type is NOT suitable for XHTML.
|
и годится лишь для документов, соблюдающих правила совместимости с HTML (с полными закрывающими тегами для непустых элементов, без переносов строк в атрибутах и т.п.), а эти правила прописаны для XHTML 1.0, а не 1.1. В итоговой табличке комбинация XHTML1.1 + text/html тоже помечена жирным красным SHOULD NOT, да и W3C-шный валидатор на нее сердится как на Potential Issue.
Сообщение от tenshi
|
xhtml - это подмножество html
|
Нет. Это подмножество XML, функционально аналогичное HTML. XHTML1.0 - это переформулирование грамматики HTML4.01 в XML-ный синтаксис, XHTML1.1 - практически то же, но в виде модулей, XHTML2 - попытка расширить эту грамматику. А XHTML5 - просто способ сериализации DOM (в виде well-formed XML без доктайпа) для HTML 5 (кстати, все браузеры, понимающие application/xhtml+xml, нормально с ним работают).
Последний раз редактировалось SelenIT, 03.04.2008 в 11:46.
|
|
03.04.2008, 14:38
|
Профессор
|
|
Регистрация: 20.03.2008
Сообщений: 1,183
|
|
Цитата:
|
В нативном виде, как application/xhtml+xml. Трюк с XSLT лишь маскирует эту несовместимость
|
у него нет в списке поддерживаемых миме-типов application/xhtml+xml, поэтому инициирует скачку, а не парсинг. xhtml - это подмножество html и xml. ие умеет парсить и то и то.
Цитата:
|
В итоговой табличке комбинация XHTML1.1 + text/html тоже помечена жирным красным SHOULD NOT
|
http://www.rfc-editor.org/rfc/rfc2119.txt
единственное, чему спецификация противоречит, - это твоему представлению о ней.
Цитата:
|
Нет. Это подмножество XML, функционально аналогичное HTML
|
синтаксически xhtml является подмножеством как html, так и xml.
Последний раз редактировалось tenshi, 03.04.2008 в 14:42.
Причина: а делать нефиг
|
|
03.04.2008, 14:48
|
Профессор
|
|
Регистрация: 20.03.2008
Сообщений: 1,183
|
|
Цитата:
|
Вы не ответили: зачем нужен XHTML Valid и почему
|
1. быстрее парсится ( ибо xml имеет строгие и чёткие правила )
2. проще написать парсер ( по той же причине )
3. есть возможность использовать трансформацию исходящего документа ( например, прокси, трансформирующий встроенные svg в vml )
4. ошибка в вёрстке сразу видна.
|
|
03.04.2008, 15:24
|
Новичок на форуме
|
|
Регистрация: 19.02.2008
Сообщений: 9,177
|
|
Сообщение от tenshi
|
1. быстрее парсится ( ибо xml имеет строгие и чёткие правила )
2. проще написать парсер ( по той же причине )
3. есть возможность использовать трансформацию исходящего документа ( например, прокси, трансформирующий встроенные svg в vml )
|
С просмотром сайта в браузере все это слабо коррелирует.
Сообщение от tenshi
|
4. ошибка в вёрстке сразу видна.
|
Мы ведь под ошибкой подразумеваем отображение сайта отличное от желаемого, правда? Только XHTML нам тут не помогает.
|
|
03.04.2008, 15:30
|
Интересующийся
|
|
Регистрация: 22.03.2008
Сообщений: 15
|
|
Сообщение от tenshi
|
ие умеет парсить и то и то.
|
Да, умеет. Больше того - XML он даже умеет валидировать . Но вот отображать отпарсенный XML с xmlns="http://www.w3.org/1999/xhtml" как страницу (что делают другие браузеры) он не умеет. И трюк с XSLT не заставит его делать это.
Сообщение от tenshi
|
синтаксически xhtml является подмножеством как html, так и xml.
|
Не является он подмножеством HTML, хоть ты тресни. Нет в HTML ни <br /> со товарищи, ни атрибута xmlns. XML - да, является.
Сообщение от tenshi
|
единственное, чему спецификация противоречит, - это твоему представлению о ней.
|
Мощно, внушает). Оказывается, SHOULD NOT == NOT RECOMMENDED == "может быть по разумным причинам допустимо и даже полезно при определенных обстоятельствах" == "так делать нужно и круто всегда". Спасибо за ликбез! .
Сообщение от tenshi
|
1. быстрее парсится ( ибо xml имеет строгие и чёткие правила )
...
4. ошибка в вёрстке сразу видна.
|
А в случае, когда XHTML отдается как text/html (и, как следствие, парсится tag soup-парсером)?
Последний раз редактировалось SelenIT, 03.04.2008 в 15:38.
|
|
03.04.2008, 15:34
|
Интересующийся
|
|
Регистрация: 22.03.2008
Сообщений: 15
|
|
Сообщение от Kolyaj
|
с просмотром сайта в браузере все это слабо коррелирует.
|
Коррелирует, но только в том случае, если страница отдается как application/xhtml+xml или с другим XML-ным Content-type.
|
|
03.04.2008, 15:51
|
|
Администратор
|
|
Регистрация: 25.05.2007
Сообщений: 1,221
|
|
Насчет XHTML и HTML замечания.
HTML допускает таги типа <br>. HTML родился из SGML.
XHTML требует таги закрывать <br/>. Он родился из XML, который сделал более строгой слишком свободные объявления тагов и атрибутов SGML.
--
При обработке документа XML-парсером (тип text/xml), таг типа <script src="my.js"/> полностью эквивалентен <script src="my.js"></script>.
А при обработке HTML-парсером (тип text/html), таг <script src="my.js"/> приведет к ошибке из-за отсутствия закрывающего тега </script>.
P.S У меня предложение. Почему бы не собрать саммари по этому треду в одну статью, с которой все согласятся?
|
|
03.04.2008, 15:53
|
Профессор
|
|
Регистрация: 20.03.2008
Сообщений: 1,183
|
|
Цитата:
|
Мы ведь под ошибкой подразумеваем отображение сайта отличное от желаемого, правда?
|
один удачно незакрытый тэг и пара часов поиска места поломки тебе обеспечена.
Цитата:
|
Но вот отображать отпарсенный XML с xmlns="http://www.w3.org/1999/xhtml" как страницу (что делают другие браузеры) он не умеет. И трюк с XSLT не заставит его делать это.
|
по умолчанию он отображает xml в виде дерева. с помощью xslt можно объяснить ему, что отображать нужно именно в виде хтмл-страницы.
Цитата:
|
Не является он подмножеством HTML, хоть ты тресни. Нет в HTML ни <br/> со товарищи, ни атрибута xmlns. XML - да, является.
|
там есть указание, что неизвестные аттрибуты в целях обратной совместимости должны игнорироваться. xhtml - это продолжение html на качественно новом уровне.
Цитата:
|
Оказывается, SHOULD NOT == NOT RECOMMENDED == "может быть по разумным причинам допустимо и даже полезно при определенных обстоятельствах" == "так делать нужно и круто всегда". Спасибо за ликбез!
|
так делать приходится, пока большая часть пользователей пользуется устаревшими браузерами.
|
|
|
|