Cualquier elemento que pongas dentro de ese, heredará la opacidad.
 
La solución más común y más actual, es no usar opacity y usar un color de fondo transparent, usando rgba() que contiene un canal alfa, el cual no se heredará lógicamente.    
Código CSS:
Ver original- div { 
-   background-color: rgba(0,100,0,0.5); 
- }