<div class="container">
<div class="blog-card-vertical">
<div class="meta">
<div class="ribbon ribbon-victory">
victory
</div>
<div class="photo" style="background-image: url(https://storage.googleapis.com/chydlx/codepen/blog-cards/image-1.jpg)"></div>
<ul class="details">
<li class="author"><a href="#">John Doe</a></li>
<li class="date">Aug. 24, 2015</li>
<li class="tags">
<ul>
<li><a href="#">Learn</a></li>
<li><a href="#">Code</a></li>
<li><a href="#">HTML</a></li>
<li><a href="#">CSS</a></li>
</ul>
</li>
</ul>
</div>
<div class="description">
<h1>Learning to Code</h1>
<h2>Opening a door to the future</h2>
<p> Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ad eum dolorum architecto obcaecati enim dicta
praesentium, quam nobis! Neque ad aliquam facilis numquam. Veritatis, sit.</p>
<p class="read-more">
<a href="#">Read More</a>
</p>
</div>
</div>
</div>
.blog-card-vertical {
display: flex;
flex-direction: column;
margin: 1rem auto;
box-shadow: 0 3px 7px -1px rgba(241, 128, 83, 0.5);
margin-bottom: 1.6%;
background: #fff;
line-height: 1.4;
font-family: sans-serif;
border-radius: 5px;
overflow: hidden;
z-index: 0;
max-width: 320px;
}
.blog-card-vertical a {
color: inherit;
}
.blog-card-vertical a:hover {
color: #5ad67d;
}
.blog-card-vertical:hover .photo {
transform: scale(1.3) rotate(3deg);
}
.blog-card-vertical .meta {
position: relative;
z-index: 0;
height: 200px;
}
.blog-card-vertical .photo {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-size: cover;
background-position: center;
transition: transform 0.2s;
}
.blog-card-vertical .details,
.blog-card-vertical .details ul {
margin: auto;
padding: 0;
list-style: none;
}
.blog-card-vertical .details {
position: absolute;
top: 0;
bottom: 0;
left: -120%;
margin: auto;
transition: left 0.2s;
background: rgba(241, 128, 83, 0.9);
color: #fff;
padding: 10px;
width: 100%;
font-size: 0.9rem;
}
.blog-card-vertical .details a {
}
.blog-card-vertical .details ul li {
display: inline-block
}
.blog-card-vertical .details .author:before {
font-family: FontAwesome;
margin-right: 10px;
content: "\f007";
}
.blog-card-vertical .details .date:before {
font-family: FontAwesome;
margin-right: 10px;
content: "\f133";
}
.blog-card-vertical .details .tags ul:before {
font-family: FontAwesome;
content: "\f02b";
margin-right: 10px;
}
.blog-card-vertical .details .tags li {
margin-right: 2px;
}
.blog-card-vertical .details .tags li:first-child {
margin-left: -4px;
}
.blog-card-vertical .description {
padding: 1rem;
background: #fff;
position: relative;
z-index: 1;
}
.blog-card-vertical .description h1,
.blog-card-vertical .description h2 {
font-family: Poppins, sans-serif;
}
.blog-card-vertical .description h1 {
line-height: 1;
margin: 0;
font-size: 1.7rem;
color: #000;
}
.blog-card-vertical .description h2 {
font-size: 1rem;
font-weight: 300;
text-transform: uppercase;
color: #a2a2a2;
margin-top: 5px;
}
.blog-card-vertical .description .read-more {
text-align: right;
}
.blog-card-vertical .description .read-more a {
color: rgba(241, 128, 83, 1);
display: inline-block;
position: relative;
}
.blog-card-vertical .description .read-more a:after {
content: "\f061";
font-family: FontAwesome;
margin-left: -10px;
opacity: 0;
vertical-align: middle;
transition: margin 0.3s, opacity 0.3s;
}
.blog-card-vertical .description .read-more a:hover:after {
margin-left: 5px;
opacity: 1;
}
.blog-card-vertical p {
position: relative;
margin: 1rem 0 0;
color: #a2a2a2;
}
.blog-card-vertical p:first-of-type {
margin-top: 1.25rem;
}
.blog-card-vertical p:first-of-type:before {
content: "";
position: absolute;
height: 5px;
background: rgba(241, 128, 83, 1);
width: 35px;
top: -0.75rem;
border-radius: 3px;
}
.blog-card-vertical:hover .details {
left: 0%;
}
.ribbon {
z-index: 1001;
display: block;
position: absolute;
top: 0px;
left: 0px;
border-radius: 4px;
color: #957422;
background: #ffe9aa;
border: 1px solid #eddbb0;
font-size: .64rem;
font-weight: bold;
line-height: 2;
}
.ribbon-victory {
color: #fff;
background: #ec2c22;
border-color: #ec2c22;
}
.ribbon-victory::after {
border-color: transparent #b32c0e transparent transparent;
}
.ribbon::after {
content: " ";
position: absolute;
left: 0;
top: 100%;
z-index: 1000;
width: 0;
height: 0;
border-style: solid;
border-width: 0 5px 4px 0;
border-color: transparent #dab65d transparent transparent;
}
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.