<figure>
	<img src="https://images.pexels.com/photos/3326213/pexels-photo-3326213.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=650&w=940" alt="title">
	<figcaption>
		<h4>Adipisicing elit. Sunt earum magni, tenetur similique nisi aspernatur.</h4>
		<p>Sit amet consectetur adipisicing elit. Velit exercitationem, temporibus laborum nostrum cupiditate rerum. Nobis expedita fugiat asperiores dolore culpa, aliquam minima! Officia excepturi sit dolorum.</p>
		<a href="#">Read More</a>
	</figcaption>
</figure>
* {
	box-sizing: border-box;
}
img {
	max-width: 100%;
	vertical-align: top;
}

figure {
	width: 400px;
	margin: 20px auto;
	
	/* trick */
	position: relative;
	overflow: hidden;
	/* trick */
}

figcaption {
	/* trick */
	position: absolute;
	width: calc(100% - 60px);
	height: calc(100% - 60px);
	top: 30px;
	left: 30px;
	z-index: 1;
	/* trick */
	
	background: rgba(0,0,0,.7);
	color: #fff;
	font-family: sans-serif;
	padding: 0 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

/* trick */
figcaption::before {
	position: absolute;
	content: '';
	width: calc(100% + 20px);
	height: calc(100% + 20px);
	top: -10px;
	left: -10px;
	box-shadow: 0 0 0 100vw rgba(0,0,0,.7);
	z-index: -1;
}
/* trick */

/* styles */
figcaption > h4 {
	font-size: 25px;
	line-height: 28px;
	margin: 0 0 10px;
}

figcaption > p {
	font-size: 16px;
	line-height: 24px;
}
figcaption > a {
	display: inline-block;
	text-decoration: none;
	padding: 10px 0 10px;
	border-radius: 3px;
	background: #ddd;
	color: #000;
	text-align: center;
	display: block;
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.