Кирилл, мешает то, что некоторые элементы могут рендерится далеко за пределами шаблона,и если в Битриксе это не критично, то в Друпале, к примеру, очень. Также мешает использование внешних библиотек, интеграция которых сталкивается с тем, что они неостаточно шаблонизированны, чтобы иметь возможность полностью управлять выводом.
Странно. Если у нас вёрстка оказывается не валидная, то она не принимается до тех пор, пока верстальщик не сделает её валидной. Но как правило, всё всегда валидно с первого раза.
Речь не идет о людях,которые сразу же отдают Вам невалидную верстку. Я говорю о верстальщике, который не делает из макета xhtml, а интегрирует в Битрикс, именно здесь и вылазят некоторые сложности.
Дивно валидно резиново кроссбраузерно seo-ориентировано и с красивым кодом после интеграции, если бюджет соответствующий — почему бы и нет. Красноярский интернет-магазин
Счетчики, сейчас, практически у всех XHTML. Основная проблема — невалидный код компонентов Битрикса (содержащий сложные формы, вызовы некоторых функций т.к. show2images() и др.), невалидный код получаемый в его виз. редакторе.
PS: Я, вообще, считаю, что хороший с разложенными по папкам слоями с русскими наименованиями PSD-файл это уважение дизайнера к верстальщику, валидный хорошо комментированный код XHTML — это уважение верстальщика к программисту, а хорошо комментированный и задокументированный php код — это уважение программиста к заказчику и ко всем тем, кто работал над сайтом на предыдущих этапах (всегда, бывает, очень, обидно видеть, к примеру, хорошую работу верстальщика убитую, затем, программистами).
Errors found while checking this document as XHTML 1.0 Transitional!Result: 28 Errors
Цитата
Validation Output: 28 Errors Line 29, Column 39: required attribute "type" not specified <script src="/bitrix/js/main/utils.js"></script>
✉
The attribute given above is required for an element that you've used, but you have omitted it. For instance, in most HTML and XHTML document types the "type" attribute is required on the "script" element and the "alt" attribute is required for the "img" element.
Typical values for type are type="text/css" for <style> and type="text/javascript" for <script>. Line 193, Column 29: document type does not allow element "h5" here; missing one of "object", "applet", "map", "iframe", "button", "ins", "del" start-tag <h5 class="price">820 руб.</h5>
✉
The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element, or possibly that you've forgotten to close a previous element.
One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "
") inside an inline element (such as "<a>", "<span>", or "<font>"). Line 197, Column 126: document type does not allow element "div" here; missing one of "object", "applet", "map", "iframe", "button", "ins", "del" start-tag …EMENT_ID=6124"><div class="butt bb2"><span>Купить</span></div></a>
✉
The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element, or possibly that you've forgotten to close a previous element.
One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "
") inside an inline element (such as "<a>", "<span>", or "<font>"). Line 198, Column 142: document type does not allow element "div" here; missing one of "object", "applet", "map", "iframe", "button", "ins", "del" start-tag …EMENT_ID=6124"><div class="butt bb3"><span>Сравнить</span></div></a>
✉
The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element, or possibly that you've forgotten to close a previous element.
One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "
") inside an inline element (such as "<a>", "<span>", or "<font>"). Line 461, Column 210: character "?" is not allowed in the value of attribute "id" …oticon(':?:');}" name="smile" id=':?:' />
✉
It is possible that you violated the naming convention for this attribute. For example, id and name attributes must begin with a letter, not a digit.
...
Даже если сайт сдан заказчику полностью валидным, в процессе наполнения всё равно будут ошибки.
Что нам стоит, сайт построить? - Нарисуем, будет жить!
Не вижу смысла соблюдать ВСЕ правила валидности, если сами производители браузеров их не соблюдают. Главное, чтобы верстка была валидной в рамках объектной модели документа. А в остальном это читая спекуляция.
Дмитрий Мартынов пишет: Не вижу смысла соблюдать ВСЕ правила валидности
Для профессионального верстальщика это совсем не сложно. Проблема возникает при интеграции так как API Битрикса, часто, возвращает невалидный код. Вот еще пример: SortingEx().
Роман Забродин пишет: Для профессионального верстальщика это совсем не сложно.
Да это понятно, но только я не об этом. Нет 100% гарантии, что с валидная верстка будет отображаться везде корректно. Не забываем про ИЕ6 Я бы даже сказал так: при использовании всякого рода хаков и фиксов для ИЕ6 и других "корявых" браузеров, соблюсти валидность не всегда реально.