В интернете сейчас огромное количество материалов о unobtrusive javascript. Появляются не смелые упоминания о том, что может быть ещё и unobtrusive css. Ненавязчивай в данном контексте значит - не объязательный, не нужный. То есть должно работать и без него.
Насмотревшись на это сполна выдвигаю встречную теорию unobtrusive everything, but html.
Сейчас обясню откуда ноги ростут: в последнее время я был в роли пассивного свидетеля и активного участника нескольких проектов в которых презентационная логика в силу разных предрассудков опережала функциоальную часть WEB-приложения. В общем-то, я раньше и сильней всех других наступил на эти грабли в аудиторном фонде... Теперь делаю вывод: первична функциональная сторона приложения, продемонстрировать которую можно и в голом html.
В той же django для генерации html форм на лету уже несколько инструментов есть с помощью которых из голой идеи можно получить результат за 30-40 минут (http://f.labwr.ru например), не больше, но нерадивый программист тратит 70% времени проекта на отлаживане работы вот этой вот рюшечки, которая относится к юзаюилити, а не к функциональности в фундаментальном смысле слова.
Ниже таблица приоритетов снизу вверх она уменьшает уровень приоритетности:
yui | ExtJS | любой другой javascript framework |
Unobtrusive javascript | ||
Unobtrusive CSS | или оба сразу | Unobtrusive CSS framework |
HTML |
Наверное Вы скажете: "Что это за фигня такая вааще? Что за банальности?". А я отвечу: "Да, это банальности, но почему-то каждый раз начиная новую проект программист забывает эти банальности..."
Пример масса: у многих горе-любителей AJAX есть привычка фигачить в ссылки асинхронный запрос к серверной части, который возвращает кусок страницы. Итог: отключаем javascript и логи нарушается полностью. Про javascript framework'и я вообще молчю