Portfolio 1 Bootstrap
Portfolio block to display your portfolio of client websites, applications or photography on websites and landing pages.
Dependencies
- Bootstrap 4
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>FWR Bootstrap Blocks - Portfolio 1</title>
<!-- Styles -->
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.9/css/all.css" integrity="sha384-5SOiIsAziJl6AWe0HWRKTXlfcSHKmYV4RBF18PPJ173Kzn7jzMyFuTtk8JA7QQG1" crossorigin="anonymous">
<!-- Custom style -->
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="portfolio-1 py-4 py-md-5">
<div class="container">
<div class="row">
<div class="col-md-10 col-xl-8 portfolio-intro text-center mx-md-auto">
<h1 class="portfolio-intro-title mb-3">Our Awesome Work</h1>
<p class="lead">The most important feature of FWR Blocks is that they are plug and play, reusable blocks of code that make frontend development extremely quick and easy.</p>
</div>
</div>
<div class="row portfolio-list mt-4 mt-md-5 pt-4">
<div class="col-sm-6 col-lg-4">
<div class="portfolio-item mx-auto mb-3">
<div class="portfolio-img">
<img src="//assets.free-website-resources.com/img/portfolio-1.jpg" alt="" class="img-fluid">
<div class="portfolio-hover d-flex align-items-center justify-content-center">
<span class="far fa-plus-square"></span>
</div>
</div>
<div class="portfolio-meta text-center p-3 px-md-4">
<h5 class="portfolio-title mb-1">Lion - The King</h5>
<p class="text-muted text-uppercase mb-0">John Doe</p>
</div>
</div>
</div>
<div class="col-sm-6 col-lg-4">
<div class="portfolio-item mx-auto mb-3">
<div class="portfolio-img">
<img src="//assets.free-website-resources.com/img/portfolio-2.jpg" alt="" class="img-fluid">
<div class="portfolio-hover d-flex align-items-center justify-content-center">
<span class="far fa-plus-square"></span>
</div>
</div>
<div class="portfolio-meta text-center p-3 px-md-4">
<h5 class="portfolio-title mb-1">Tiger - The Runner</h5>
<p class="text-muted text-uppercase mb-0">John Doe</p>
</div>
</div>
</div>
<div class="col-sm-6 col-lg-4">
<div class="portfolio-item mx-auto mb-3">
<div class="portfolio-img">
<img src="//assets.free-website-resources.com/img/portfolio-3.jpg" alt="" class="img-fluid">
<div class="portfolio-hover d-flex align-items-center justify-content-center">
<span class="far fa-plus-square"></span>
</div>
</div>
<div class="portfolio-meta text-center p-3 px-md-4">
<h5 class="portfolio-title mb-1">Elephant - The Big Animal</h5>
<p class="text-muted text-uppercase mb-0">John Doe</p>
</div>
</div>
</div>
<div class="col-sm-6 col-lg-4">
<div class="portfolio-item mx-auto mb-3">
<div class="portfolio-img">
<img src="//assets.free-website-resources.com/img/portfolio-4.jpg" alt="" class="img-fluid">
<div class="portfolio-hover d-flex align-items-center justify-content-center">
<span class="far fa-plus-square"></span>
</div>
</div>
<div class="portfolio-meta text-center p-3 px-md-4">
<h5 class="portfolio-title mb-1">Monkeys</h5>
<p class="text-muted text-uppercase mb-0">John Doe</p>
</div>
</div>
</div>
<div class="col-sm-6 col-lg-4">
<div class="portfolio-item mx-auto mb-3">
<div class="portfolio-img">
<img src="//assets.free-website-resources.com/img/portfolio-5.jpg" alt="" class="img-fluid">
<div class="portfolio-hover d-flex align-items-center justify-content-center">
<span class="far fa-plus-square"></span>
</div>
</div>
<div class="portfolio-meta text-center p-3 px-md-4">
<h5 class="portfolio-title mb-1">Cranes</h5>
<p class="text-muted text-uppercase mb-0">John Doe</p>
</div>
</div>
</div>
<div class="col-sm-6 col-lg-4">
<div class="portfolio-item mx-auto mb-3">
<div class="portfolio-img">
<img src="//assets.free-website-resources.com/img/portfolio-6.jpg" alt="" class="img-fluid">
<div class="portfolio-hover d-flex align-items-center justify-content-center">
<span class="far fa-plus-square"></span>
</div>
</div>
<div class="portfolio-meta text-center p-3 px-md-4">
<h5 class="portfolio-title mb-1">Squirrel</h5>
<p class="text-muted text-uppercase mb-0">John Doe</p>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- /.portfolio-1 -->
<!-- Scripts -->
<script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script>
</body>
</html>
// Bootstrap variables and mixins
@import "~bootstrap/scss/functions";
@import "~bootstrap/scss/variables";
@import "~bootstrap/scss/mixins";
// Variables
$primary: #5863f8;
// Custom CSS
.portfolio-intro-title {
font-size: 1.75rem;
}
.portfolio-item {
max-width: 300px;
}
.portfolio-img {
position: relative;
border-radius: 1rem;
overflow: hidden;
&:hover {
.portfolio-hover {
opacity: 1;
transform: scale(1);
transition: transform .3s, opacity .5s;
}
}
}
.portfolio-title {
font-size: 1.125rem;
}
.portfolio-hover {
background-color: rgba($primary, .7);
color: $white;
position: absolute;
top: 0;
left: 0;
right: 0;
height: 100%;
transform: scale(.85);
opacity: 0;
transition: transform 1s, opacity .5s;
cursor: pointer;
.far {
font-size: 2rem;
}
}
@include media-breakpoint-up(md) {
.portfolio-intro-title {
font-size: 2.5rem;
}
.portfolio-item {
max-width: 400px;
}
}
.portfolio-intro-title {
font-size: 1.75rem;
}
.portfolio-item {
max-width: 300px;
}
.portfolio-img {
position: relative;
border-radius: 1rem;
overflow: hidden;
}
.portfolio-img:hover .portfolio-hover {
opacity: 1;
-webkit-transform: scale(1);
transform: scale(1);
-webkit-transition: opacity .5s, -webkit-transform .3s;
transition: opacity .5s, -webkit-transform .3s;
transition: transform .3s, opacity .5s;
transition: transform .3s, opacity .5s, -webkit-transform .3s;
}
.portfolio-title {
font-size: 1.125rem;
}
.portfolio-hover {
background-color: rgba(88, 99, 248, 0.7);
color: #fff;
position: absolute;
top: 0;
left: 0;
right: 0;
height: 100%;
-webkit-transform: scale(0.85);
transform: scale(0.85);
opacity: 0;
-webkit-transition: opacity .5s, -webkit-transform 1s;
transition: opacity .5s, -webkit-transform 1s;
transition: transform 1s, opacity .5s;
transition: transform 1s, opacity .5s, -webkit-transform 1s;
cursor: pointer;
}
.portfolio-hover .far {
font-size: 2rem;
}
@media (min-width: 768px) {
.portfolio-intro-title {
font-size: 2.5rem;
}
.portfolio-item {
max-width: 400px;
}
}