Подскажите, как сейчас принято по уму разрабатывать интерфейс сайтов? Большая часть пишется в CSS или уже как-то все делается в XML или все по прежнему делается в HTML?
Один мой знакомый пишет так: вся структура сайта описана на XHTML, при этом там именно структура, а все оформление в CSS и связано не только через стандартное свойство class но и id объектов.
Самое модное это всё чисто на div'ах, и чисто с css. В идеале: внутри <body> никаких тегов кроме <div> и <span> (ну может еще <img> или <object>) а у них никаких атрибутов кроме class и id... Ну еще желательно чтоб валидный XHTML был. А совсем полный оргазм, это XML+XSLT на клиентской стороне.
На практике у этого подхода есть ограничения, поэтому xml приходится парсить на серверной стороне, а в коде который отдается браузеру зачастую без например <table> никак не обойтись.
Это все исключительно мои личные впечатления ессно.
Объясните чем это круче HTML+css?
Ну представим к примеру, сайт - на PHP, HTML+css, код валиден, всё работает, везде отображается корректно, дизайн хороший, сайт выполняет свои функции, посещаемость хорошая, заказчика он устраивает полностью, сайт легко администрируется.
Чем этот сайт плох тогда?
> Ну представим к примеру, сайт - на PHP, HTML+css, код валиден, всё работает, везде отображается корректно, дизайн хороший, сайт выполняет свои функции, посещаемость хорошая, заказчика он устраивает полностью, сайт легко администрируется. Чем этот сайт плох тогда?
Единственная претензия -- нужно было делать сайт на perlе.
>эти три требования без кучи костылей несовместимы :)
Если быть внимательным и в процессе разработки постоянно тестировать во всех основных браузерах (их не так много, правда платформы разные: IE, Opera, Firefox, Konqueror, AOL, Safari), то можно будет добиться этого и без костылей
А вот не соглашусь...
Пример: разные браузеры по разному понимают кажется css-параметр width в сочетании с border (т.е. полную ширину элемента по-разному вычисляют). Что делать? Писать для каждого браузера свою css? Костыль! Избегать использования абсолютно нормальных css-стилей против которых стандарты w3c ничего не имеют? Костыль! Делать такие вещи картинками? Ж) Щас своим стареньким модемом в монитор кидаться начну! ;)
> Единственная претензия -- нужно было делать сайт на perlе.
По моим личным наблюдениям на пхп матерятся только "матерые сисадмины", которые умеют ваять многоэтажные (с абсолютно непонятными простым смертным исходниками) скрипты на perl/bash/awk, которым приходилось с матерками восстанавливать заваленный кульхацкерами новенький phpBB (это он виноват, это он! :D ). Но которые едва смогут написать hello world на с++...
>Ну представим к примеру, сайт - на PHP, HTML+css, код валиден, всё работает, везде отображается корректно, дизайн хороший, сайт выполняет свои функции, посещаемость хорошая, заказчика он устраивает полностью, сайт легко администрируется.
>заказчика он устраивает полностью,
Такое бывает редко, а если и бывает, то быстро проходит. Например меня linux.org.ru своей функциональностью уже не устраивает, как и 95% тутошних посетителей. Но мы - не заказчики, к сожалению. Увы. Иначе потребовали бы изменения функциональности быстрыми и дешевыми методами, а к примеру PHP, как и Clipper, не дает возможность менять функциональность быстро и безболезненно, без переписывания бОльшей части кода. Сам имею сайт на PHP поэтому знаю, о чем пишу.
Чтобы с этим бороться, и придумали объектно-ориентированные технологии.
Да, такими страничками удобнее сделать кроссбраузерный вид, который хорошо парсится человеком, но "логическая" верстка лучше усваивается всякими роботами в придачу. То есть, игра все-таки стоит свеч...
Хорошо. Достал. maps.google.com генерится в html из JavaScript на клиенте. Устраивает? Таким образом 99% сайтов пишется на html, а нормальные люди пишут на JavaScript.
Понимаешь вообще разницу между тем, чтобы при обновлении страницы каждый раз 1Мб трафика клиенту отдавать, и тем, чтобы генерить html на клиенте, или не понимаешь?
причем полный и беспробудный. А вобще пока браузеры не научацца нормально работать с плавающей моделью и прочеми наваротами ничто по сабильности отображения <table> не заменит