Как добавить форму круга в прямоугольник div [дубликат]
Я хотел добавить форму круга в середине прямоугольного div, например:
Вот HTML:
<div class="p-5 mb-3 mainInfo"></div>
И с этим CSS:
.mainInfo{
background-color: #fff;
border: .01rem round #e0e1ed;
border-radius: 20px;
color: #585CA1;
}
А вот так выглядит прямоугольник div:
Итак, как я могу добавить круг в середине этого div?
1 ответ
Я добился этого
absolute
позиционирование и
::before
селектор. ::before высота и цвет фона такие же, как у контейнера .mainInfo, что делает тень круга скрытой внутри контейнера.
HTML:
<div class="mainInfo">
<div class="circle">
</div>
</div>
CSS:
.mainInfo{
background-color: #fff;
border: .01rem round #e0e1ed;
border-radius: 20px;
color: #585CA1;
width:100%;
height:5em;
box-shadow: 0px 0px 17px -5px rgba(0,0,0,0.75);
margin-top: 3em;
display: flex;
align-items: center;
justify-content: center;
}
.circle {
position: relative;
width: 8em;
height: 8em;
background: #fff;
border-radius: 50%;
box-shadow: 0px 0px 17px -5px rgba(0,0,0,0.65);
}
.circle:before{
position: absolute;
content: "";
width: 15em;
height: 5em;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background: #fff;
z-index: 100;
}