Интересны минусы такого подхода. Определяем браузер пользователя и в зависимости от него отдаём верстку без хаков и т.п. для этого браузера. В чем тут может быть подвох?
Чтобы не городить конструкций, типа тех, что вы написали выше, чтобы вёрстка была выверена для каждого отдельного браузера. Мой вопрос чисто академический, но если сильных отрицательных сторон этого способа нет, то почему бы и не применить :-)
При таком подходе важно продумать, чтобы версия браузера определялась и для ближайших будущих версий браузеров. Иногда сталкиваюсь с тем, что после установки свежих версий браузеров на некоторых сайтах появляются сообщения о том, что у меня очень старый браузер.
Если броузер фаерфокс — возметься темплейта из папки templates/firefox, если ie7 то из templates/ie7 есди другой броузер — то дефолтный файл из templates
А зачем вам поддерживать больше кода? Разработчики могут сами формировать будущее веба, но пока мы будет затачивать вёрстку под браузеры, их производители будут диктовать нам свои условия. Зачем ms шевелиться с поддержкой стандартов, если у конечных пользователей и так всё работает (благодаря хакам)?
В общем, не вижу разницы между использованием хаков и отдельной вёрсткой под браузер. По-моему, это точно такой же хак.