1. First, we need fresh reactjs setup, and for that, we need to run below commands into out terminal, and also we should have latest node version installed on our system:
npx create-react-app my-awesome-project
cd my-awesome-project
npm start
2. Now we need to run below commands into our project terminal to get bootstrap and related modules into our reactjs application:
npm install [email protected] --save
npm start //For start project again
3. Finally for the main output, we need to add below code into our my-awesome-project/src/App.js file or if you have fresh setup then you can replace my-awesome-project/src/App.js file code with below code:
import React from 'react';
import './App.css';
import 'bootstrap/dist/css/bootstrap.min.css';
function App() {
return (
<div>
<div class="container bootstrap snippets bootdey">
<div class="row">
<div class="col-sm-8 col-md-9 col-lg-9 text-center">
<h1 class="text-primary"><b>Portfolio</b></h1>
</div>
</div>
<div class="row">
<div class="media">
<div class="row">
<div class="media-img col-sm-4 col-md-3 col-lg-3">
<div class="img-overlay">
<a href="#/" class="btn btn-primary">Details</a>
</div>
<img class="port-image" src="https://www.bootdey.com/image/400x400/87CEEB/000000"/>
</div>
<div class="col-sm-8 col-md-9 col-lg-9">
<h3>
<a href="#/">
Portfolio name
</a>
</h3>
<h6>
<span class="Newsletter">Newsletter</span>
<span class="sep">/</span>
<span class="Web Design">Web Design</span>
<span class="sep">/</span>
</h6>
<p>
A complete description for this work y para no utilizar lorem ipsum escribire mucho texto por ejemplo Bootdey es una galería de fragmentos de bootstrap gratis Códigos html Css Js
</p>
</div>
</div>
</div>
<div class="media">
<div class="row">
<div class="media-img col-sm-4 col-md-3 col-lg-3">
<div class="img-overlay">
<a href="#/" class="btn btn-primary">Details</a>
</div>
<img class="port-image" src="https://www.bootdey.com/image/400x400/6A5ACD/000000"/>
</div>
<div class="col-sm-8 col-md-9 col-lg-9">
<h3>
<a href="#/">
Portfolio name
</a>
</h3>
<h6>
<span class="Newsletter">Newsletter</span>
<span class="sep">/</span>
<span class="Web Design">Web Design</span>
<span class="sep">/</span>
</h6>
<p>
A complete description for this work y para no utilizar lorem ipsum escribire mucho texto por ejemplo Bootdey es una galería de fragmentos de bootstrap gratis Códigos html Css Js
</p>
</div>
</div>
</div>
<div class="media">
<div class="row">
<div class="media-img col-sm-4 col-md-3 col-lg-3">
<div class="img-overlay">
<a href="#/" class="btn btn-primary">Details</a>
</div>
<img class="port-image" src="https://www.bootdey.com/image/400x400/FF4500/000000"/>
</div>
<div class="col-sm-8 col-md-9 col-lg-9">
<h3>
<a href="#/">
Portfolio name
</a>
</h3>
<h6>
<span class="Newsletter">Newsletter</span>
<span class="sep">/</span>
<span class="Web Design">Web Design</span>
<span class="sep">/</span>
</h6>
<p>
A complete description for this work y para no utilizar lorem ipsum escribire mucho texto por ejemplo Bootdey es una galería de fragmentos de bootstrap gratis Códigos html Css Js
</p>
</div>
</div>
</div>
</div>
</div>
</div>
);
}
export default App;
4. Now we need to add below code into our my-awesome-project/src/App.css file :
@import url('http://fonts.googleapis.com/css?family=Open+Sans:200,300');
body{
font-family: 'Open Sans',Arial,Helvetica,Sans-Serif;
background: none repeat scroll 0 0 #ebeeed;
}
.port-image{
width:400px;
height:400px;
}
.media {
background: none repeat scroll 0 0 #fff;
border-bottom: 1px solid #c7c9c8;
margin-bottom: 30px;
}
.media a {
overflow: hidden;
}
.media-img {
overflow: hidden;
padding: 0;
position: relative;
}
.media-img .img-overlay {
background: none repeat scroll 0 0 rgba(0, 0, 0, 0.4);
height: 100%;
opacity: 0;
padding-top: 50%;
position: absolute;
text-align: center;
transition: opacity 0.3s ease-out 0s;
visibility: hidden;
width: 100%;
z-index: 4;
}
.media:hover .img-overlay a, .media .img-overlay:hover a {
display: inline-block;
}
.media:hover .img-overlay, .media .media-img:hover .img-overlay {
opacity: 1;
transition: opacity 0.3s ease-out 0s;
visibility: visible;
}
.media div.media-img img {
height: auto;
transform: scale(1, 1);
transition-duration: 2000ms;
transition-timing-function: ease-out;
width: 100%;
}