Half circle outline around image
Using border and border radius, you can create a semi-circle frame around a circle image.
by Jon Fuller
HTML
<div class="table">
<div class="col">
<a href="" class="half-circle img1"></a>
</div>
<div class="col">
<a href="" class="half-circle img2"></a>
</div>
</div>
CSS
.table {
display: table;
width: 100%;
background: tan;
padding: 20px;
box-sizing: border-box;
}
.col {
display: table-cell;
width: 50%;
padding: 20px;
}
.col:nth-child(even) {
box-shadow: -1px 0 0 rgba(255,255,255,0.25);
}
.half-circle {
width: 200px;
height: 200px;
position: relative;
margin: 0 auto;
border-radius: 100px;
margin: 0 auto;
display: block;
transition: all 0.5s ease;
background-color: gray;
}
.half-circle::before {
position: absolute;
content: "";
top: 0;
right: 0;
bottom: 0;
left: 0;
border-radius: 100px;
opacity: 1;
transition: all 0.5s ease;
background-size: cover;
background-repeat: no-repeat;
}
.half-circle:hover::before {
opacity: 0.5;
transform: rotate(180deg);
}
.half-circle:hover {
transform: rotate(-180deg);
}
.half-circle::after {
position: absolute;
content: "";
top: 50%;
right: -20px;
bottom: -20px;
left: -20px;
background-color: transparent;
border-bottom-left-radius: 120px;
border-bottom-right-radius: 120px;
border: 10px solid rgba(0,0,0,0.5);
border-top: 0;
opacity: 1;
transition: all 0.5s ease;
}
.half-circle:hover::after {
border-color: rgba(255,255,255,0.75);
}
.img1::before {
background-image: url(http://freshysites.com/wp-content/uploads/2015/10/Lintonhall-Labtop-3.jpg);
}
.img2::before {
background-image: url(http://freshysites.com/wp-content/uploads/2015/12/LaveggioCoffee_iPad-iphone_6_v2.jpg);
}