«Ожидаемый»: «(default2.aspx, 16)» - в строке 16 нет ничего, что могло бы ожидать «:»
Ошибка не будет в строке 16 вашего файла .aspx, возможно, даже не в строке 16 исходного HTML-файла, который создает файл aspx. Это будет рядом со строкой 16 одного из ваших связанных файлов .js. Который из? IE не скажет вам.
Это можно узнать, добавив дополнительные строки в начале каждого файла .js и посмотрев, что происходит с номером строки ошибки, но, вероятно, лучше просто установить Script Debugger.
IE8 наконец исправляет это.
Должен ли я создавать разные CSS-файлы для разных браузеров и загружать их, обнаруживая браузер? или есть какие нибудь общие проблемы и хаки?
Начните с совместимого со стандартами CSS и типа документа в режиме стандартов и протестируйте его в Firefox 3 или Opera, Safari, Chrome. В основном они дадут вам более или менее одинаковые результаты. Теперь протестируйте в IE7 и, надеюсь, это будет работать.
Сегодняшний проблемный браузер - IE6. Возможно, вам придется добавить хаки для этого. Вы можете сделать это в отдельной таблице стилей, если их много, или просто использовать хак "* html" для случайного правила.
Вы можете забыть обо всех старых хакерских атаках, хакерских моделях и т. Д. Они используются только для IE5, который не работает, и IE6 Quirks Mode, который вы не должны использовать.