You can use CSS psuedo selector ::after to achieve this. Here is a working demo.
.bg-container{_x000D_
width: 100%;_x000D_
height: 300px;_x000D_
border: 1px solid #000;_x000D_
position: relative;_x000D_
}_x000D_
.bg-container .content{_x000D_
position: absolute;_x000D_
z-index:999;_x000D_
text-align: center;_x000D_
width: 100%;_x000D_
}_x000D_
.bg-container::after{_x000D_
content: "";_x000D_
position: absolute;_x000D_
top: 0px;_x000D_
left: 0px;_x000D_
width: 100%;_x000D_
height: 100%;_x000D_
z-index:-99;_x000D_
background-image: url(https://i.stack.imgur.com/Hp53k.jpg);_x000D_
background-size: cover;_x000D_
opacity: 0.4;_x000D_
}
_x000D_
<div class="bg-container">_x000D_
<div class="content">_x000D_
<h1>Background Opacity 0.4</h1>_x000D_
</div>_x000D_
</div>
_x000D_