Приемлемо для недействительного XHTML?

голоса
20

Я заметил много сайтов, SO включенного использовать XHTML в качестве языка разметки, а затем не придерживаться спецификаций. Просто просматривают источник для SO там отсутствуют закрывающие теги абзацев, недействительных элементов и т.д.

Так должны инструменты (и разработчики) используют доктайп XHTML, если они собираются произвести недопустимые наценки? И если браузеры более тверды в их принятии плохой наценки?

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

Задан 06/08/2008 в 15:21
источник пользователем
На других языках...                            


14 ответов

голоса
16

Есть много причин , чтобы использовать правильный код. Мой любимый , что позволяет использовать проверку в качестве формы регрессионного тестирования, предотвращая разметки эквивалент «дельта гниль» от ведущих к реальным проблемам оказания раз ошибки достичь некоторой критической массы. И в самом деле, это просто неаккуратно , чтобы «ленивый» ошибки , как опечатки и неправильно вложенными / незакрытые теги аккумулировать. Действительно Разметка один способ определить страстные программист .

Там также вопрос о отладки: действительный разметки также дает стабильный базовый уровень , из которого работать на неизбежные беды кросс-браузерной совместимости. Нет веб - разработчик , который ценит свое время не следует начинать отладку проблем совместимости браузера , не убедившись , что разметка, по крайней мере синтаксический действительная, и любые другие недопустимые разметки должны иметь хорошую причину быть там.

(Кстати, как не удается stackoverflow.com этих тестов, и предложения , чтобы исправить проблемы были сократился .)

Все , что сказал, чтобы ответить на ваш конкретный вопрос, это, вероятно , не стоит использовать один из XHTML DOCTYPES если вы не планируете производить действительные (или , по крайней мере , хорошо сформированную) разметку. Основные преимущества XHTML получены от того факта , что XHTML является XML, что позволяет ему быть обработан и трансформирован инструментами и технологиями , которые работают с XML. Если вы не планируете сделать ваш XHTML хорошо сформированный XML, то есть мало смысла в выборе , что DOCTYPE. Последние HTML 4 спецификации, вероятно , сделать все , что нужно, и это гораздо более либерален.

Ответил 06/08/2008 d 15:46
источник пользователем

голоса
2

Вы можете сказать, что у меня есть OCD на XHTML валидности. Я считаю, что большинство проблем с кодом не является действительным происходит от программистов не зная разницы между HTML и XHTML. Я пишу 100% правильный XHTML и CSS или некоторое время теперь, и никогда не было каких-либо серьезных проблем рендеринга с другими браузерами. Если держать все в силе, и не попробовать что-нибудь слишком экзотическое CSS мудры, вы сэкономите массу времени в исправлениях.

Ответил 15/09/2008 d 16:34
источник пользователем

голоса
2

Я не думаю, что, если вы укажете доктайп, есть какая-либо причина не придерживаться этого DOCTYPE.

Использование XHTML позволяет легко автоматизирован обнаружения ошибок, каждое изменение может быть автоматически проверяется на наличие недействительных разметки. Это предотвращает ошибки, особенно при использовании автоматически генерируемого содержимого. Это очень легко для веб-разработчиков, используя шаблонизатор (JSP, ASP.NET StringTemplate, и так далее) для копирования / один закрывающий тег слишком мало или слишком много пасты. Если это ваша единственная ошибка, она может быть обнаружена и исправляется немедленно. Я когда-то работал на сайте, который имел 165 проверки ошибок на странице, из которых 2 или 3 были фактические ошибки. Это было трудно найти в беспорядке других ошибок. Автоматическая проверка могла бы предотвратить эти ошибки в источнике.

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

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

Это хорошо, чтобы быть прагматичным и не придерживаться XHTML только потому, что кто-то сказал так, независимо от затрат, но при современном уровне знаний о CSS и браузеров, тестирование и инструменты проверки, большую часть времени выгоды гораздо больше, чем расходы.

Ответил 02/09/2008 d 11:11
источник пользователем

голоса
2

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

Ответил 02/09/2008 d 10:56
источник пользователем

голоса
1

Нет, вы не должны использовать XHTML , если вы не можете гарантировать оформленности, и на практике вы не можете гарантировать, если вы не используете XML сериализатор для создания разметки. Читайте о производстве XML .

Ну сформированность это вещь , которая отличает XHTML от HTML. XHTML с «только один» ошибкой разметки перестает быть XHTML. Он должен быть совершенным каждый раз .

Если сайт «XHTML» , кажется, работает с некоторыми ошибками, это потому , что браузеры игнорируют DOCTYPE и интерпретируют страницу в формате HTML.

См XHTML прокси , что силы интерпретации страниц как XHTML. Большую часть времени они с треском провалились . Это одна из причин , почему будущее XHTML является неопределенным , и поэтому разработка HTML была возобновлена .

Ответил 11/10/2008 d 14:16
источник пользователем

голоса
1

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

Ответил 06/08/2008 d 15:42
источник пользователем

голоса
1

Хотя я считаю, в стремлении к действительным XHTML и CSS, часто трудно сделать по ряду причин.

  • Во-первых, некоторые из содержания может быть загружен с помощью AJAX. Иногда, фрагменты не правильно вставлен в существующий DOM.
  • HTML, что вы читаете, возможно, не все были произведены в том же документе. Например, страница может быть изготовлена ​​из компонентов, до или шаблонов, а затем бросили вместе прямо перед тем, браузер делает это. Это не оправдание, но вы не можете предположить, что HTML вы видите была рука закодированы все сразу.
  • Что делать, если некоторые из кода, сгенерированного Markdown является недействительным? Вы не можете винить переполнения стека для получения не правильный код.
  • И, наконец, цель DOCTYPE не просто сказать: «Эй, я использую правильный код», но это также дать браузеру голову, что вы пытаетесь сделать так, что он может по крайней мере приблизиться к правильно разбору эта информация.

Я не думаю, что большинство разработчиков указать DOCTYPE и затем явно не прилипают к нему.

Ответил 06/08/2008 d 15:35
источник пользователем

голоса
1

Я бы не использовать XHTML вообще только сохранить себя философскую нагрузку. Это не похоже на любые браузеры рассматривая его как XHTML в любом случае.

Браузеры отвергнуты бедная наценка, если страница передаются как приложение / XHTML + XML, но они редко. Это отлично.

Я бы больше заботиться о таких вещах, как инлайн использование CSS и JavaScript с переполнением стека, только потому, что они делают обслуживание сложнее.

Ответил 06/08/2008 d 15:29
источник пользователем

голоса
0

Для 99,999% сайтов там, это действительно не имеет значения. Единственный раз, когда у меня было это важно, я побежал вход HTML через HTMLTidy в XHTML-Изе, а затем пробежал обработку на нем.

Довольно много, это аксиома старого программиста: не доверять никому ввода.

Ответил 06/08/2008 d 15:37
источник пользователем

голоса
0

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

Ответил 06/08/2008 d 15:33
источник пользователем

голоса
0

Я не понимаю, почему все увязнуть пытаются сделать свои веб-сайты соответствуют стандарту, когда некоторые браузеры Накладки имеют проблемы правильно рендеринга стандартного кода. Я был в веб-дизайне что-то вроде 10 лет, и я остановился двойной codding (читай: хакерство CSS), и изменение глупые вещи просто так что я мог бы поставить кнопку на своем сайте.

Я считаю, что с помощью <DIV> заставит вас быть недействительны независимо, и это становится немного сложнее сделать какой-либо серьезный JavaScript / AJAX без него.

Ответил 06/08/2008 d 15:30
источник пользователем

голоса
0

Я говорю, если он делает хорошо, то это не имеет значения, если это пиксель совершенны.

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

Теперь, я не говорю, что вы должны построили неаккуратные веб-страниц, но я не вижу причин, чтобы исправить то, что не сломано. Браузеры не собираются отказываться от поддержки для исправления ошибок в любое время в ближайшем будущем.

Ответил 06/08/2008 d 15:29
источник пользователем

голоса
0

До тех пор, как он работает в IE, FF, Safari, (вставить другой браузер здесь), вы должны быть в порядке. Проверка не так важно, как это правильно сделать в нескольких браузерах. Просто потому, что это действительно, не означает, что она будет работать в IE правильно, например.

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

Ответил 06/08/2008 d 15:29
источник пользователем

голоса
0

Это зависит. У меня был этот вопрос с моим блог , где видео YouTube , вызванным недействительным XHTML, но это оказывается хорошо. С другой стороны, у меня есть «Valid XHTML» ссылка, и сочетание претензии «Valid XHTML» и недействительное XHTML не является профессиональным.

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

Ответил 06/08/2008 d 15:25
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more