IE7 <не поддерживает и IIRC IE8 имеет проблемы с пространствами имен.Есть по крайней мере еще один эзотерический браузер с серьезными проблемами, но я не помню, какой именно. </p>
В принципе, не существует метода DOM на основе унифицированных выражений, и абсолютно лучше всего использовать библиотеку (вездесущий ответ "use jquery", но вы должны по крайней мере проверить Sizzle , если у вас есть проблемы с большими библиотеками), потому что откатить свои собственные файлы - это больше усилий, чем разумно (я говорю из опыта).*