jQuery $ .browser должен делать это просто отлично, но вот другое решение
function isie() {
var ie = false,
version = 100;
if (navigator.appVersion.indexOf("MSIE") != -1) var version = parseFloat(navigator.appVersion.split("MSIE")[1]);if (version == 8) {var ie = true} return ie;
}
возвращает true, если IE8.
Кроме того, прозрачность jQuery css нормализована и должна отлично работать в IE8.