1 апреля 2007 года этот пост был действительно сверстан на XHTML 2 и даже с грехом пополам работал в разных браузерах с разными глюками. Комментарии все это время принимались, но явно не показывались. Конечно, это была шутка, и Software Maniacs ни на какой XHTML не переходит :-).

XHTML2-вариант поста доступен для истории здесь. С Первым Апреля!


Перечитывал тут комментарии к своим статьям в категории XHTML и долго над ними размышлял. С одной стороны, конечно, и с поддержкой XHTML в браузерах не так все хорошо, как хотелось бы, и W3C, вроде, тоже уже не вкладывает в это направление свой вес... Но с другой стороны, если кто и "виноват" в этой ситуации, то это не W3C и уж точно не сам XHTML, а те, кто все это время только обещал, что XHTML когда-нибудь будет, но ничего для этого не делал. Если бы мы смелее стали таки использовать новые стандарты, глядишь и не сидели бы сейчас с необходимостью поддерживать HTML следующий десяток лет.

Короче говоря, я понял, что был неправ, и решил сделать шаг вперед: перевести softwaremaniacs.org на XHTML. Получилось это довольно легко, правда не на всем сайте. Подробности дальше...

Чтобы не томить вас ожиданием, призываю заглянуть в исходник той страницы, которую вы сейчас читаете (если вы читаете это в фид-ридере, то надо, разумеется, зайти на сайт :-) ).

Как видно (и как многие догадались из заголовка статьи), я выбрал именно XHTML 2. Причиной этому послужило то, что XHTML 1 все таки наследует от HTML слишком много старых кривых решений, в то время как XHTML 2 — это новый язык разметки с четкой идеологией.

В процессе перевода как раз изменение XHTML-кода было самым приятным:

В итоге код выглядит гораздо логичней.

Не обошлось, правда, и без парочки ложек дегтя. Некоторые происходят из того, что XHTML 2 еще все таки в процессе разработки, а некоторые из-за того, что мой браузер (Firefox 2) не поддерживает некоторые элементы XHTML 2. Но я надеюсь, что в следующей версии с этим будет гораздо лучше. Ложки дегтя, в итоге, такие:

В общем, без особенных проблем и за исключением досадных мелочей страница теперь выглядит точно так же, как и в HTML! Осталось теперь остальной сайт перевести...

Комментарии: 56

  1. Майк

    Странно, в тексте ни одна ссылка не нажимается. Firefox 2.0.0.3

  2. Bacek

    Всё прогрессивное человечество давно возвращается к HTML. Вот например здесь: http://www.w3.org/html/. Обрати внимание на дату :)

    W3C Launches New HTML Working Group

    W3C is pleased to announce the new HTML Working Group, chartered to create the next HTML standard with the active participation of browser vendors, software developers, and content designers. "It's time to revisit the standard and see what we can do to meet the current community needs, and to do so effectively with commitments from browser manufacturers in a visible and open way," said Tim Berners-Lee, W3C Director.

    The voluminous feedback has been compiled into the Architectural vision for HTML/XHTML2/Forms Chartering document.

    A particular effort has been done to foster the participation of everyone. If you are in the mood to get involved, please, visit the HTML Working Group home page.

    ** * March 7th, 2007**

  3. Лобач Олег

    В IE7 страница выглядит ужасно - текст растянут на весь экран, списков достоинств/недостатков нет (идет сплошной текст без кода), формы комментария нет совсем.

    Вообщем, как-то не очень этот XHTML2 смотрится в ослике...

  4. Kildor

    что-ж, не знал, что я пользуюсь несуществующим браузером.

  5. Евгений

    Есть и ещё одна проблема: как известно в Firefox если нажать на ссылку средней кнопкой мыши, ссылка откроется в новой вкладке. Со ссылками здесь такого не происходит.

  6. Илья Flamefork

    Да и честно говоря, по статистике у меня IE всего 6%, поэтому это меня не сильно беспокоит.

    Свершилось! Наконец-то людей не беспокоит совместимость с IE :)))
    Но увидев первоначально сайт в IE7, был сииильно удивлен :)

  7. Данила

    Иван, в IE6 выглядит просто никак. :)

  8. Alexander Solovyov

    Однако, смело. ;) Интересно, долго ли будут тянуть с его принятием?

    И будет ли в FF3 поддержка нормальная? Или такая же, как и во втором?..

  9. Irokez

    Респект, хотя в ИЕ, конечно, страшно выглядит =)

  10. FX Poster

    Что называется - аффтар жжет! То так рьяно отстаивать HTML, а теперь... А что же натолкнуло тебя на сей странный и непонятный :) шаг?

  11. FX Poster

    Ваня, не стоило напиваться на мой день рождения :) Пользователи IE не поймут :-D

  12. Олег

    С первым апреля!

  13. Zigzag

    Ага. Покой нам только снится! И вас с 1ым апреля, Иван! =) А жаль... что это только шутка! %)

  14. Zigzag

    А нет, глянь те вы и вправду. =) Но думаю, это только на сегодняшний день! 8D

  15. Швечиков Леонид

    С 1-ым апреля Вас, Иван! :)))

  16. akbarovs

    Иван, странно, но клик колесиком мыши вообше не работает в ff2. Впрочем, в Opera тоже.
    Видимо из-за этого:

    Firefox не поддерживает активацию ссылок на XHTML2-элементах, поэтому с той же странички пришлось умыкнуть XBL-документ, который автоматически добавляет всем элементам с href ссылки, реализованные с помощью XLink (гениально!)

  17. Максим Россомахин

    1 апреля? :-)

  18. FX Poster

    http://softwaremaniacs.org/blog/?p=241
    Не подскажешь, как рассекретить этот линк? :)

  19. bw

    Не надо остальной сайт :-).

    В Opera 9 не работают ссылки (почему то не заполнилась форма комментария). Странно что страница не проходит валидацию на validator.w3.org, мне кажется DTD тут не должен играть большой роли (т.е. вообще). Так же данная часть сайта (это страница) потеряла возможность разворачиваться по ширине.

    Вообще тема интересная, спасибо что не оставляешь её. Буду регулярно следить. А ты случайно не сталкивался с конвертерами (Python) XHTML в HTML? Было бы удобно верстать сайт в одном формате, а затем автоматом конвертировать его для "HTML браузеров".

    ..bw

  20. alt

    отличненько. теперь в опере (по крайней мере в 9.02) не работают ссылки. прогресс, бле.. =(

  21. alt

    а! точно, сегодня же первое апреля...

    скоро ли все назад вернете?

  22. Егор

    Ай, красавец, шутка удалась, интересно одно, сколько готовил это всё? :)

  23. Alex

    Отсутствие title сразу бросилось в глаза: и в ридере, и в заголовке окна браузера, и уж тем более в названии вкладки. Неудобно...

  24. Oleg Andreev

    Кстати, насчет HTML. Стандарт подразумевает возможность рендеринга частично загруженного кода? Иными словами, HTML — потоковый по стандарту или ad hoc?

    XHTML это не подразумевает, т.к. документ должен быть XML-валидный, а, следовательно, — загруженный до конца.

  25. kukutz

    С первым апреля!

  26. Ivan A-R

    Респект и уважуха =)))
    Я сейчас собираюсь переделать структуру своего сайта, и буду шаблон переписывать. Так Вы навели меня на мысль, переписать его под xhtml2 =)

  27. Sergey

    Интересно что перестала работать средняя кнопка мыши, которая обычно открывала ссылку в новам табе в FF 2.0

  28. Лёня Хачатуров

    Первое апреля, никому не верю :)

  29. Platosha

    Полагаю, дата опубликования поста не случайна :).

  30. Tema

    Ну вот же ж! ;)

    Правда не пойму почему автора так тянет то в одну крайность, то в другую? Почему если не устаревший HTML, так сразу ещё не вышедший XHTML2?

    Собственно, ведь XHTML 1.1 как раз и создан, для того, чтобы в ожидании официальной спецификации второй версии уже сейчас отказаться от HTML.

    Мне кажется именно использование версии 1.1 является наиболее оправданным в данный момент.

    Offtop: интересно не задержится ли выход второй версии XHTML из-за возвращения к трудному ребенку HTML?

  31. ichik

    И вас с первым апреля.

  32. Neutrino

    Смелый шаг. Но мне не совсем ясна его цель. Мотив да, а вот с целью проблема. Ведь это же кодинг ради кодинга... Плюс проблемы, пусть не серьезные но все же.

    З.Ы. Так что же у нас впереди, HTML5 или XHTML2? :)

  33. Flint

    Еще небольшая проблема это то, что в статус-баре не видно, куда ведет ссылка - но с улучшенной семантикой документа это совершенно не проблема! Зато теперь можно с помощью быстрых и лекговесных библиотек парсить ваш сайт и затем преобразовать его хоть в HTML, хоть и даже в plain text. За XHTML будущее, и я рад, что вы тоже осознали это.

  34. Антон Ковалёв

    В Сафари тут страх божий.

  35. Murkt

    Почему-то далеко не все обращают внимание на дату и на то, что эта страничка - обычная статическая, и со всем остальным сайтом никак не связана :)

  36. libraM

    Хорошая шутка :)

  37. magritte

    Странно, но при просмотре Оперой 9.10 нет возможности перейти по ссылкам.

  38. innuendo

    мда...код дейсвительно стал красивее... вот только Konqueror издевательски изменяет курсор над ссылками, а открывать не хочет:( а насчет "виноватых" правильно - надо действовать самим, никто не придет и не скажет что нужно использовать XHTML!

  39. Мрачный аббат

    Иван, утром отправил вам скрин этой страницы в Safari...
    А тут вот вспомнил, что сегодня оказывается такой день... :) В общем, и вас с первым апреля!

  40. Виталий Шароватов

    И Вас с первым апреля!

  41. Lupus Est

    (утирая платком слёзы) Спасибо Вам... В это тяжёлое время... потеплело на душе...

    В копилку ложек дёгтя: в Firefox в XHTML2-документах не открываются ссылки в новом табе по средней кнопке мышки. Правда, это чисто браузерный глюк: по Ctrl+клик открываются.

  42. Lupus Est

    Просматривая комментарии через blogs.yandex.ru: при чём здесь первое апреля, если XHTML - второй :(

  43. Роман

    без title выглядит браузер както-то криво на панеле задач

  44. magritte

    Блин, повёлся

  45. Константин

    Иван Григорьевич!

    Да не сбивали бы Вы с пути праведного отроков неразумных, душею мягких и извилиной неокрепших... Даже в такой знаменательный день... )))

    Я рыдал... )

  46. ELV1S

    Ха-ха. Столько людей повелось на эту шутку.

  47. Антон

    В опере 9.20 (билт 8762) - кажется, последняя версия, - не работают ссылки. Совсем :(

  48. Иван Сагалаев

    Всем спасибо за комментарии! You made my day :-)

    Пара ответов:

    интересно одно, сколько готовил это всё? :)

    Идея пришла где-то на позапрошлой неделе, а готовил что-то около 4-5 часов. Больше всего времени отняло осознание, что XHTML2 не валидируется просто потому что DTD пустой, а также попытки заставить работать XForms. Реально, в XHTML1-документе формочка работала, а в XHTML2 — никак. пришлось внедрять XHTML1 внутрь XHTML2 :-)

    Кстати, насчет HTML. Стандарт подразумевает возможность рендеринга частично загруженного кода? Иными словами, HTML — потоковый по стандарту или ad hoc?

    Задуман потоковым. Больше того, еще и весь CSS построен вокруг этой идеи.

    XHTML это не подразумевает, т.к. документ должен быть XML-валидный, а, следовательно, — загруженный до конца.

    Вот таки нет. XML требует, чтобы парсер бросил парсинг, как только встретит ошибку well-formed'ности, но не запрещает использовать данные из частично распарсенного документа прямо по ходу дела. Собственно, основной метод парсинга XML — SAX — работает как раз по потоковому принципу, выдавая элементы по мере нахождения.

    Отчасти это впечатление, что XML исключает progressive rendering, подогревалось багом в Gecko, который там был с начала времен. Но его недавно пофиксили, правда ни в одном релизнутом браузере фикс еще не появился.

    Ведь это же кодинг ради кодинга…

    Именно! Поэтому я это и не поддерживаю :-)

  49. Виктор

    Честно говоря, вначале подумал, что это — Первоапрельская Шутка :). И даже в исходнике страницы ожидал увидеть, мол, "С Первым Апреля!" :).

    Однако, был приятно удивлён ;)... Читать Ваш сайт всё интереснее и интереснее!..

  50. Мрачный аббат

    I love this blog!!! :)

  51. bw

    Здорово развел :-).

    А то думал пропадет день - ни одного прикола.

  52. Tema

    Угу...
    Я уже было обрадовался...

  53. Виталий

    Отважный шаг, я бы не рискнул сейчас переходить на XHTML2, хотя и начал все верстать только валидно и только дивами еще пару лет назад, поэтому наверно и не рискнул бы.

    "XML — крутая штука, что ни говори!" - здорово, что вы его наконец оценили. :)
    "по статистике у меня IE всего 6%" :) !!!

  54. Егор

    Странно, в тексте ни одна ссылка не нажимается. Firefox 2.0.0.3

    Ну не знаю, у меня SeaMonkey 1.1.1, там версия Гекона вроде даже постарее, но все ссылки работали исправно.
    В Opera 9 не работают ссылки (почему то не заполнилась форма комментария).
    В Опере 9.2 (8767) форма заполнилась нормально, а вот ссылки не работали, да.

    Хотя интересно было почитать, я не вдавался так в особенности XHTML2, а если честно, то вообще никак не вдавался :)

  55. devnull

    Из-за этого же пришлось вручную дописать прямо в страницу, что атрибуты “id” — это именно идентификаторы элементов, иначе в CSS не работает указание “#some_element”.

    Насколько я помню, то для этого есть атрибут xml:id. Но честно, я не проверял.

  56. asd56

    Помоему, это просто "черный PR" со стороны Ивана.

Добавить комментарий