Pull to refresh

Comments 60

… сорри хабра парсер съел теги. В общем так:

Хех. Только что вгляделся и увидел что у автора аттлист в доктайпе.
и что это даст? с тем же успехом можно ничего не писать.
Вам, конечно, незнакомы скрипты в комментариях и условные комментарии IE? Будет это работать — другой вопрос, но прием известный.
и какое они имеют отношение к обсуждаемому вопросу?
Видимо, вы потеряли нить обсуждения даже не начав разговор.
ага, видимо я — единственный, кто понял суть проблемы и дал исчерпывающий ответ, а не стал обсуждать какие-то левые нити…
Да, признаю, я зря начал наезжать :) Извините.
А какой это текстовый редактор на скрине?
В любом редакторе можно настроить данную стилизацию.
Но по дефолту такая тема есть в редакторе gEdit, тема называется Oblivion.
Похоже на textmate с темой Twilight.
Там еще и рельсы кусочек торчит ;)
UFO just landed and posted this here
В Dojo Toolkit над этим многие долго бились в итоге так и не решили — говорят, что это невозможно. Или свои атрибуты в HTML, или чистая валидность по w3c — выбирай.
ггг, я совершил невозможное :-D теперь я бох!
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
Полностью согласен. class для этих вещей подходит идеально.
Используйте расширенные аттрибуты и тэги. Для проверки на well-formed установите tidy, а адрес валидатора выкиньте из головы. За 15 лет не было ни одного сайта который что-либо получал от своей валидности (кроме девелоперского микро-геморроя, выходящего далеко за рамки рациональности 20/80).
>За 15 лет не было ни одного сайта который что-либо получал от своей валидности кроме…
Со времен Моисея никто еще ничего не получил от мытья рук кроме расхода мыла и воды. А шею моют только лентяи, которым лень свежий подворотничек подшить.
Валидность в данном случае (см. топик) — не мытьё рук, а удаление заусенцев на ногтях.
Топик как раз провалидацию.
Кстати tidy может вывалить незакрытый тег не в виде error а в виде warning. Поэтому держать в верстке 300 идиотских warnings стремно. Можно пропустить реальную ошибку.
Полностью поддерживаю, часто вижу заметки, касающиеся валидации кода. Зачем это нужно? Что это даст конкретному ресурсу? Если все работает корректно во всех браузерах, что даст валидация разработчику? Ну если только чувство самоудовлетворения и и немного геморроя.
Проверка верстки на валидность — это элементарная культура производства. В принципе можно не соблюдать, так же как не мыть руки после туалета. Но некультурно.
.
Пример с броузером оч. показателен. Невалидная верстка может спокойно отображаться в текущих версиях броузеров, но разваливаться в следующих. Собственно прямая параллель с мытьем рук. Обычно обходится, но можно подцепить какую-нибудь болячку типа дизентерии.
.
Другой пример — XSLT технологии. В них требование если не валидности, так хотя бы well-formed кода условие необходимое.
Вы наверное не поняли мой ответ выше и упорно сравниваете валидность с мытьем рук. Мне вот кажется что мыть руки — это писать well-formed код! А удовлетворение же валидатора (ради идеи светлого будущего всех браузеров) сродни наведению маникюра. Глупое неэффективное времяпровождение мизофоба.
>Мне вот кажется что мыть руки — это писать well-formed код!
Два примера:
1. well-formed XML код допускает дубликат id. Но js скрипты после этого ведут себя странно.
2. FF3 (не будущий, а текущий броузер) не отрабатывает well-formed конструкцию [a href="#"][div]blah-blah-blah[/div][/a] так как это делают другие броузеры. habrahabr.ru/blogs/webdev/38829/

И самое главное, о чем я постоянно талдычу, — если игнорировать предупреждения валидатора, рано или поздно это приведет к появлению критической ошибки. Поэтому код должен быть чистым и валидным. Впрочем я это отношу только к своему коду и коду тех с кем работаю.
UFO just landed and posted this here
Мне кажется что я начинаю производить впечатление фетишиста. Это не так. Валидатор — не фетиш, а инструмент, позволяющий «избежать тупых ошибок» (с) SelenIT
UFO just landed and posted this here
>Валидация по DTD, безусловно полезна для разработчика как страховка
> от невнимательности и источник предупреждений о потенциально багоопасных местах.
А я ни о чем больше и не говорю. Только об этом.

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

Так вот и в этой дискуссии в валидизации видят почему-то только религиозную норму.
UFO just landed and posted this here
>Она помогает избежать тупых ошибок
Мне кажется это достаточно для того, чтобы пользоваться валидатором в процессе работы.
Остается больше времени на поиск ошибок в валидном коде.
UFO just landed and posted this here
Простите, я где-то написал что валидность — самоцель?
Честное слово, я был сегодня до изумления трезв.

UFO just landed and posted this here
И после этого мы еще удивляемся, почему отечественный автопром гордо именуют «тазиками» и по уровню он до сих пор глубоко в 80-х…
А как на счет того, чтобы указывать новый неймспейс и схему? Например, как-нибудь так (сорри, если в синтаксисе ошибки, плохо помню уже):

xmlns:lookup="http://schema.ru/..."


Ведь вроде бы XHTML задумывался именно как eXtensible.
дтд не знает ничего о хмл-неймспейсах. да и вообще, он слабо подходит для описания структуры хмл. но его, тем не менее, приходится использовать для перевода браузера в стандартный режим =(
UFO just landed and posted this here
ты знаешь другие способы перевода?
UFO just landed and posted this here
Кстати не понимаю, почему w3c не хочет валидировать такой код? Главное же валидный XML, а это значит нет проблем для парсинга. Какая им разница сколько и каких атрибутов вы используете? Помоему w3c должны пересмотреть свое отношение к кастомным атрибутам.
UFO just landed and posted this here
Вы путаете понятия well-formed и valid. w3c не будет пересматривать правила проверки валидного HTML, поскольку они сами эти правила и разработали. Просто не надо рассматривать результаты валидации как инструкцию к действию.
Да, действительно, путал. Теперь я могу сказать, что я за строгий well-formed и не строгий valid :)
Кстати, погоню за супервалидным кодом, всегда считал каким-то комплексом у веб-разработчиков :) По-моему, проще писать правильный код, но не обязательно 100% валидный. Даже Яндекс, к примеру, не стесняется такого «некошерного» тега, как
noindex
.

Ох, нападут сейчас на меня…
а почему он должен его стесняться? =) он же не декларирует стремление сделать вэб лучше…
>Ох, нападут сейчас на меня…
Ой нападу. Noindex плох не столько тем, что создает проблемы с валидацией, сколько тем что кроме самого Яндекса его никто не поддерживает. А Яндексу в свою очередь западло использовать кошерны атрибут rel=nofollow, который поддерживают западные поисковики.
Речь как раз и идет о тегах и атрибутах, которые никто кроме моего кода (кода Яндекса/кода автора статьи) не поддерживает. Ну невалидный он, этот код, ну черт с ним. Свет ведь не сошелся клином на этом валидаторе.

К тому же я уже предлагал выше легитимный способ расширения стандарта XHTML. Это стандартом самого языка XHTML предусмотрено. И любой XML-валидатор должен отпарсить этот код без ошибок.
Про легитимный вариант — да. Я его знаю давно. Хотя не использую. Не было необходимости.

А по поводу наплеватьельства на валидность имхо вы неправы. Привычка к игнорированию сообщений валидатора — стремная. Рано или поздно среди 300 warnings которые в принципе не по делу проскакивает один, который разваливает верстку или приводит к глюкам которые сложно выловить.
Хорошо если все в одних руках. А если версткой и скриптами занимается несколько человек, подгадить можно не себе а коллеге.
Я и не говорю что нужно плевать и писать кривой код :) Я ни в коем случае не оправдываю нарушения структуры языка, его синтаксиса. Просто в данном случае, когда нужно всего лишь расширить язык можно и не обращать внимания на гневные сообщения валидатора. Вот и всё.
используйте jquery.metadata, атрибуты class и rel.
имхо, тут стоит идти по WAI-ARIA-пути, т.е. расширенные атрибуты + свой dtd
www.w3.org/TR/wai-aria/

Стандарты тем хороши, что описаны как «стандарты» (тавтология получается). Т.е. разработчик любого браузера (кто сказал, что новых браузеров больше не будет? Chrome — сентября 2008) будет полагаться именно на стандарты, а не на свой взгляд — ведь стандарты поддерживают все браузеры, а его взгляд — никто. Это только MS позволено выпендриваться как угодно. Да и то со временем это проходит (IE8 поддерживает блочную модель!).
есть такой плагин, с ним возможно использовать три разных метода для интеграции метаданных, первый и третий вполне валидные
А мне вот интересно, что за задачка такая, где ну никак без кастомных атрибутов? если это для сохранения состояния каких то элементов или объектов, то попробуйте посмотреть сюда docs.jquery.com/Core/data
Можно было бы и просто setAttribute (или банальный яваскриптовый массив). Неудобство, как минимум в том, что придется делать два одинаковых цикла — один для вывода валидного HTML, а второй для яваскрипта, назначающего нужные аттрибуты. И куча других дурацких последствий, тяжело влияющих на неокрепшую психику.
Sign up to leave a comment.

Articles