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 img-content">
<div class="row">
<h2 class="text-center text-muted title">Image Gallery With Effects</h2>
</div>
<div class="row">
<div class="col-md-3 col-sm-4 col-xs-6 gray"><img class="img-responsive" src="https://www.bootdey.com/image/400x200/7FFFD4/000000" /></div>
<div class="col-md-3 col-sm-4 col-xs-6 shrink "><img class="img-responsive" src="https://www.bootdey.com/image/400x200/8A2BE2/000000"/></div>
<div class="col-md-3 col-sm-4 col-xs-6 vertpan"><img class="img-responsive" src="https://www.bootdey.com/image/400x200/5F9EA0/000000" /></div>
<div class="col-md-3 col-sm-4 col-xs-6 tilt"><img class="img-responsive" src="https://www.bootdey.com/image/400x200/FF7F50/000000"/></div>
<div class="col-md-3 col-sm-4 col-xs-6 gray"><img class="img-responsive" src="https://www.bootdey.com/image/400x200/DC143C/000000" /></div>
<div class="col-md-3 col-sm-4 col-xs-6 shrink "><img class="img-responsive" src="https://www.bootdey.com/image/400x200/FF1493/000000" /></div>
<div class="col-md-3 col-sm-4 col-xs-6 vertpan"><img class="img-responsive" src="https://www.bootdey.com/image/400x200/9400D3/000000" /></div>
<div class="col-md-3 col-sm-4 col-xs-6 tilt"><img class="img-responsive" src="https://www.bootdey.com/image/400x200/228B22/000000" /></div>
</div>
</div>
</div>
);
}
export default App;
4. Now we need to add below code into our my-awesome-project/src/App.css file :
.img-content {
margin-top:40px;
}
.img-content .title {
margin-bottom:20px;
}
img {
-moz-box-shadow: 3px 3px 5px 6px #ccc;
-webkit-box-shadow: 3px 3px 5px 6px #ccc;
box-shadow: 3px 3px 5px 6px #ccc;
margin-bottom:20px;
}
.gray img:hover{
filter: gray;
-webkit-filter: grayscale(1);
}
.tilt img:hover {
-webkit-transform: rotate(-10deg);
-moz-transform: rotate(-10deg);
-o-transform: rotate(-10deg);
-ms-transform: rotate(-10deg);
transform: rotate(-10deg);
-webkit-transition-duration: 500ms;
-moz-transition-duration: 500ms;
-o-transition-duration: 500ms;
transition-duration: 500ms;
}
.vertpan img:hover {
margin-top: -50px;
-webkit-transition: margin 1s ease;
-moz-transition: margin 1s ease;
-o-transition: margin 1s ease;
-ms-transition: margin 1s ease;
transition: margin 1s ease;
}
.shrink img:hover {
opacity: 0.7;
cursor: pointer;
border-radius: 0px;
-webkit-transform: scale(1.2, 1.2);
-webkit-transition-timing-function: ease-out;
-moz-transform: scale(1.2, 1.2);
-moz-transition-timing-function: ease-out;
-ms-transform: scale(1.20, 1.20);
-ms-transition-timing-function: ease-out;
-webkit-transition-duration: 500ms;
-moz-transition-duration: 500ms;
-ms-transition-duration: 500ms;
}
.tilt img:hover {
-webkit-transform: rotate(-10deg);
-moz-transform: rotate(-10deg);
-o-transform: rotate(-10deg);
-ms-transform: rotate(-10deg);
transform: rotate(-10deg);
}