Usando RGBA em vez de HEX, você pode definir uma cor de fundo transparente. Mas o IE8 e versões anteriores não suportam isso, então você deve declarar um substituto para esse navegador como este:
div {
background-color: #7fc7ff; // a lightblue colour. non-transparent. Only shows up if following line fails:
background-color: rgba(0,144,255,0.5); // a transparent blue colour.
}
Se você quiser ir um pouco mais sofisticado. Uma alternativa mais elaborada seria usar filtros de gradiente.
div {
filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#7f7fc7ff', endColorstr='#7f7fc7ff'); // hex value of AARRGGBB is used.
background-color: rgba(0,144,255,0.5);
}
Observe que, ao usar filtros no IE, você está basicamente usando um plugin. Ele consome mais poder de processamento. Portanto, se você estiver construindo algo sofisticado, considere isso durante suas rodadas de otimização.