
Подробное описание и демонстрацией работы эффекта наведения под номером №219 для бибилиотеки Bootstrap. Html и CSS код для реализации hover effect как на изображении.
<!-- <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css /> --> <div class="container"> <div class="row"> <div class="col-md-4 col-sm-6"> <div class="box"> <img src="https://fokit.ru/demo/images/hover-effect/hover-effect-style-219/img-1.jpg" alt=""> <div class="box-content"> <h3 class="title">Steve Thomas</h3> <span class="post">Web designer</span> <ul class="icon"> <li><a href="#"><i class="fa fa-search"></i></a></li> <li><a href="#"><i class="fa fa-link"></i></a></li> </ul> </div> </div> </div> <div class="col-md-4 col-sm-6"> <div class="box"> <img src="https://fokit.ru/demo/images/hover-effect/hover-effect-style-219/img-2.jpg" alt=""> <div class="box-content"> <h3 class="title">Kristina</h3> <span class="post">Web designer</span> <ul class="icon"> <li><a href="#"><i class="fa fa-search"></i></a></li> <li><a href="#"><i class="fa fa-link"></i></a></li> </ul> </div> </div> </div> </div> </div>css разметка для реализации данного эффекта
.box{ font-family: 'PT Sans', sans-serif; text-align: center; position: relative; overflow: hidden; transition: all 0.3s; } .box:hover{ box-shadow: 0 0 0 5px rgba(0, 0, 0, 0.1); } .box:before{ content: ''; background: linear-gradient(#833ab4,#fd1d1d,#fcb045); height: 20px; width: 20px; border-radius: 50%; opacity: 0; transform: translateX(-50%) translateY(-50%) rotateX(360deg); position: absolute; left: 50%; top: 50%; z-index: 1; transition: opacity 0.8s,height 0.2s ease 0.2s, width 0.2s ease 0.2s; } .box:hover:before{ height: 150%; width: 150%; opacity: 0.8; transform: translateX(-50%) translateY(-50%) rotateX(0); } .box img{ width: 100%; height: auto; } .box .box-content{ color: #fff; width: 100%; padding: 0 30px; opacity: 0; transform: rotateX(90deg) scale(0.5); position: absolute; top: 50%; left: 0; z-index: 1; transition: all 0.3s ease 0.4s; } .box:hover .box-content{ opacity: 1; transform: rotateX(0deg) translateY(-50%) scale(1); } .box .title{ font-size: 25px; font-weight: 700; margin: 0 0 3px 0; letter-spacing: 1px; text-transform: uppercase; display: block; } .box .post{ font-size: 16px; font-style: italic; text-transform: capitalize; margin-bottom:10px; display: block; } .box .icon{ padding: 0; margin: 0; list-style: none; } .box .icon li{ display: inline-block; margin: 0 5px; } .box .icon li a{ color: #fd1d1d; background: #fff; font-size: 20px; line-height: 35px; height: 35px; width: 35px; border-radius: 50% 0; display: block; position: relative; transition: all 0.3s; } .box .icon li a:hover{ color: #fff; background: #fd1d1d; text-decoration: none; box-shadow: 0 0 3px rgba(0,0,0,0.5); } @media only screen and (max-width:990px){ .box{ margin-bottom: 30px; } } @media only screen and (max-width:479px){ .box .title{ font-size: 20px; } }