вы могли бы применить border-radius
к внутреннему элементу и box-shadow
так:
Codepen Demo
div {
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
background: url(...) no-repeat;
background-size: cover;
}
p {
border-radius: 50%;
/* add responsive behaviour */
height : 60vw;
width : 60vw;
/* but limit its max-height/width */
max-height : 400px;
max-width : 400px;
/* apply a gray shadow outside */
box-shadow : 0 0 0 50vmax rgba(255,255,255, .4);
}
50vmax
тень распространилась достаточно широко и среднего выравнивание может быть сделано, например, через flexbox позиционирование. Просто настройте альфа-значение тени (или цвета) по своему усмотрению.
Окончательный результат