вариант 2 - по мне более адекватен и наименее затратен. нужно смотреть вперед и придерживаться философии Progressive Enhancement. Если браузер что-то не поддерживает, нужно дать ему скушать упрощенный, но вполне пригодный (читаемый) вариант.
На примере rgba-цветов. Все знаем, что ie8 не поддерживает rgba. В таких случаях пишем так:
background: white; // для ie8 - он скушает эту строку, а следующую проигнорирует - не поймёт
background: rgba(255,255,255,0.5); // для новых браузеров - они скушают и первую строку и эту, просто перезаписав значение
И всего делов...
Того же принципа Progressive Enhancement советую придерживаться и для других современных css-техник.
habrahabr.ru/post/157115 -почитать про PE