Автор той статьи я. Чтобы составить обо мне впечатление, можно почитать мой остальной блог ([Только зарегистрированные пользователи могут видеть ссылки. ]), не только эту статью. В частности там есть категория [Только зарегистрированные пользователи могут видеть ссылки. ].
Я решил ответить по некоторым особенно тронувшим меня моментам вашего, Zigzag, поста, но сразу скажу, что это по большей части для того, чтобы внести ясность для остальных, кто это все читает. Я не стал отвечать у себя в блоге, потому что ваше предложение жить при свечах едва ли относится к конструктивной критике.
Сначала несколько чисто формальных моментов.
<div class='quotetop'>Цитата</div>
вот эта строчка необходима для объявления XML - <?xml version="1.0" encoding="windows-1251"?>[/b]
Нет, это неверно. Эта строчка - так называемая processing instruction, одна из многих, которая несет дополнительную информацию для обработки XML'а, но не является обязательной, и уж совсем не означает типа документа. В частности, эта инструкция <?xml ... ?> нужна для определения версии и кодировки файла, а если она пропущена, то в спецификации все равно четко прописано, какую кодировку использовать по умолчанию.
Дело в том, что в большинстве современных спецификаций, не только XML, для определения типа файла принято использовать не то, что написано в нем самом, а внешнюю информацию. Это, кстати, очень логично, потому что для того, чтобы начать парсить файл, программе неплохо бы уже заранее знать, что именно она парсит. Вот именно поэтому тип файлов, передаваемых по сети через HTTP, должен определяется единственным образом: через HTTP-заголовок Content-type, который идет до собственно файла.
<div class='quotetop'>Цитата</div>
так вот даже если написать так
Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
* "http://yoursite.com/spec/xhtml11.dtd">
то ни один! браузер не включит режим совместимости, пусть у вас и будет на сайте лежать тот пресловутый xhtml11.dtd[/b]
Да, я об этом и говорю: браузеры не пользуются реальным документом DTD. В чем противоречие?
<div class='quotetop'>Цитата</div>
<div class='quotetop'>Цитата
Потому что на практике использовать настоящий XHTML а) трудно и б) практически незачем.[/b]
трудно только сначала начать мыслить блоками, а не таблицами...
[/b][/quote]
Вот в этом ваша большая путаница. Моя статья касается различия синтаксиса HTML и XHTML. Этот вопрос абсолютно не связан со способом верстки: табличной или CSS'ной. То есть, именно совсем абсолютно. Вы можете верстать HTML'ом и CSS'ом, а можете верстать тегами <table> в синтаксисе XHTML.
<div class='quotetop'>Цитата</div>
автору видимо нравится определять тип бразуреа и писать скрипты конкретно под типы...[/b]
Я совершенно не могу понять, откуда вы такое заключили :-). Для нормального восприятия любого текста очень помгает не думать за автора, что он считает. Потому что иначе вы спорите не со мной, а с собственными домыслами.
<div class='quotetop'>Цитата</div>
З.Ы. фоновый цвет прекрасно применятеся[/b]
В XHTML - не применяется. Проблема в том, что XHTML-документов в природе практически не существует. Даже если вы пишете документ, который валиден с точки зрения XHTML'ного валидатора, браузеры все равно воспринимают его как HTML, потому что он пересылается с Content-type: text/html. Впрочем, я это подробно изложил в статье (и в этом ее смысл).
Мне трудно написать об этом еще больше, чем я написал у себя (там есть еще одна статья после этой ([Только зарегистрированные пользователи могут видеть ссылки. ]), но я могу предложить такой эксперимент. Возьмите любую страницу, сверстанную в XHTML, и сразу после <body> напишите:
С точки зрения XML'а этот тег - совершенно нормальный одиночный тег <script> well-formed, валидный и все такое. Но если посмотреть на эту страницу в IE6, она будет пустая. Потому что IE воспринимает страницу как HTML, а в нем такого понятия как самозакрывающийся тег <script> не существует. Поэтому всю оставшуюся часть страницы IE считает содержимым скрипта.
<div class='quotetop'>Цитата</div>
ересь[/b]
Я понимаю, что очень лениво. Но возьмите мой фрагмент, про который вы так отозвались, и вставьте в валидатор: [Только зарегистрированные пользователи могут видеть ссылки. ]. Вы увидите, что он действительно валиден.
Ну и в конце я хотел бы добавить уже по всей теме в общем.
Вы пишете, что язык спецификаций сухой и сложный. Это так. Но проблема, мне кажется, не в этом, это не более, чем удобная причина их не читать. В конце концов, существует и на русском языке уже достаточное количество материалов, где рассказывается о сути стандартов (собственно, я для этого свой блог и веду).
Настоящая проблема в том, что люди не хотят разбиратсья в этих вопросы до полного понимания. Гораздо удобней выучить несколько догм ("XHTML - хорошо", "<table> - плохо" и т.д.), объявить себя знатоком и дальше воспринимать все через призму выученного набора заклинаний. А если в статье что-то непонятно -- ересь.
Индустрия постоянно развивается. Тому, что вам кажется новым подходом (XHTML + CSS), уже вообще-то 9 лет, как минуло. Люди уже давно обсуждают развитие веба дальше, потому что путь XHTML оказался нерабочим (например та же DTD-валидация не в состоянии сформулировать правила XHTML2 вообще). Обсуждается расширение семантики языка с помощью микроформатов, разрабатывается обратно совместимое расширение возможностей HTML-форм (WebForms2), ставится под сомнение удобство использование MIME-типов для определения типа документа и т.д. Поэтому не зацикливайтесь на кавычках атрибутов и закрытых тегах, они, на самом деле, не так уж много значат.
P.S. Не очень понимаю, откуда такая проблема с поиском автора статьи: в шапке блога написано "Иван Сагалаев о программировании и веб-разработке", а в футере -- "Автор: Иван Сагалаев". Я считал, что этого хватит :-).