6
2 solutions: Creating 3 different elements, or 2 if you don’t mind absolute positioning.
Solution 1:
Element 1 has border-radius
on all left banks, and border-right-width: 0
;
Element 2 has border: 4px 4px 0 0
;
Element 3 is the key: create a div that contains it with the gray background; make Element 3 have background-color: white
; and adjust the values of border-radius
of the upper margins.
Solution 2: Elements 1 and 2 are one, and 3 is positioned (track position:absolute; bottom:0;right:0;
) within.
.container
{
width:400px;
height:80px;
position:relative;
overflow:hidden;
}
.principal
{
border:4px solid black;
background-color:gray;
position:absolute;
left:0;
right:0;
top:0;
bottom:0;
border-radius:80px 0 0 80px;
}
.detalhe
{
border:4px solid black;
width:600px;
height:600px;
position:absolute;
bottom:-590px;
right:-220px;
border-radius: 100%;
background-color: white;
}
<div class='container'>
<div class='principal'>
</div>
<div class='detalhe'>
</div>
</div>
This way you want I still do not know... I only know the rounding of edges with border-Radius
– Pedro Laini