Подробное описание и демонстрация работы блока «Пагинация» для сайта под номером №34 для библиотеки Bootstrap. Html и CSS код для оформления страниц пагинации на сайте как на изображении.
<div class="demo"> <nav class="pagination-outer" aria-label="Page navigation"> <ul class="pagination"> <li class="page-item"> <a href="#" class="page-link" aria-label="Previous"> <span aria-hidden="true">«</span> </a> </li> <li class="page-item"><a class="page-link" href="#">1</a></li> <li class="page-item"><a class="page-link" href="#">2</a></li> <li class="page-item active"><a class="page-link" href="#">3</a></li> <li class="page-item"><a class="page-link" href="#">4</a></li> <li class="page-item"><a class="page-link" href="#">5</a></li> <li class="page-item"> <a href="#" class="page-link" aria-label="Next"> <span aria-hidden="true">»</span> </a> </li> </ul> </nav> </div>
.pagination-outer{ text-align: center; } .pagination{ font-family: 'Roboto', sans-serif; display: inline-flex; position: relative; } .pagination li a.page-link{ color: #8c206c; background-color: transparent; font-size: 22px; font-weight: 500; line-height: 35px; height: 45px; width: 40px; margin: 0 10px 0 0; border: none; overflow: hidden; position: relative; z-index: 1; transition: all 0.4s ease 0s; } .pagination li:first-child a.page-link { background: linear-gradient(to right,rgba(0, 0, 0, 0.2), transparent, rgba(0, 0, 0, 0.2)); padding-left: 13px; border-radius: 0; -webkit-clip-path: polygon(25% 0%, 100% 0, 100% 100%, 25% 100%, 0% 50%); clip-path: polygon(25% 0%, 100% 0, 100% 100%, 25% 100%, 0% 50%); } .pagination li:last-child a.page-link { background: linear-gradient(to right,rgba(0, 0, 0, 0.2), transparent, rgba(0, 0, 0, 0.2)); border-radius: 0; padding-right: 13px; margin-right: 0; -webkit-clip-path: polygon(75% 0, 0 0, 0 100%, 75% 100%, 100% 50%); clip-path: polygon(75% 0, 0 0, 0 100%, 75% 100%, 100% 50%); } .pagination li:first-child a.page-link:hover, .pagination li:last-child a.page-link:hover{ background-color: #8c206c; } .pagination li.active a.page-link, .pagination li a.page-link:hover, .pagination li.active a.page-link:hover{ color: #fff; background-color: transparent; border: none; text-shadow: none; } .pagination li a.page-link:before{ content: ""; background: #8c206c; width: 100%; height: 100%; opacity: 0; transform: scale(0); position: absolute; top: 0; left: 0; z-index: -1; -webkit-clip-path: polygon(100% 0, 80% 50%, 100% 100%, 0 100%, 20% 50%, 0 0); clip-path: polygon(100% 0, 80% 50%, 100% 100%, 0 100%, 20% 50%, 0 0); transition: all 0.3s ease 0s; } .pagination li:first-child a.page-link:before, .pagination li:last-child a.page-link:before{ display: none; } .pagination li.active a.page-link:before, .pagination li a.page-link:hover:before, .pagination li.active a.page-link:hover:before { opacity: 1; transform: scale(1); } @media only screen and (max-width: 480px){ .pagination{ display: block; } .pagination li{ margin-bottom: 10px; display: inline-block; } }