Reputation: 11635
I have this code in pagination
<div class="pagination">
<ul>
<li><a href="?p=0" data-original-title="" title="">1</a></li>
<li><a href="?p=1" data-original-title="" title="">2</a></li>
</ul>
</div>
But my ul
is left aligned. Is there any way to center the ul
wrt div
?
I tried margin: auto auto
and margin :0 auto
they but didn't work.
Upvotes: 115
Views: 177791
Reputation: 61
In Boostrap 5 pagination centering
<ul class=" pagination justify-content-center ">;
Using: https://getbootstrap.com/docs/5.0/components/pagination/ and https://getbootstrap.com/docs/5.0/utilities/flex/
Upvotes: 3
Reputation: 888
if use bootstrap
in blade page
<div class="pagination justify-content-center">
{{ $products->links() }}
//or
{{ $products->render() }}
</div>
Upvotes: 0
Reputation: 597
Using laravel with bootstrap 4, the solution that worked:
<div class="d-flex">
<div class="mx-auto">
{{$products->links("pagination::bootstrap-4")}}
</div>
</div>
Upvotes: 35
Reputation: 2564
To centered the pagination in BS4, should add justify-content-center
in ul
:
<nav aria-label="Page navigation example">
<ul class="pagination justify-content-center">
<li class="page-item disabled">
<a class="page-link" href="#" tabindex="-1">Previous</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"><a class="page-link" href="#">3</a></li>
<li class="page-item">
<a class="page-link" href="#">Next</a>
</li>
</ul>
</nav>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">
See Pagination Bootstrap 4 for further information.
Upvotes: 83
Reputation: 4210
The previously mentioned solutions for Bootstrap 3.0 did not work for me on 3.1.1. The pagination class has display:block
, and the <li>
elements have float:left
, which means merely wrapping the <ul>
in text-center
alone does not work. I have no idea how or when things changed between 3.0 and 3.1.1. Anyway, I had make the <ul>
use display:inline-block
instead. Here's the code:
<div class="text-center">
<ul class="pagination" style="display: inline-block">
<li><a href="...">...</a></li>
</ul>
</div>
Or for a cleaner setup, omit the style
attribute and put it in your stylesheet instead:
.pagination {
display: inline-block;
}
And then use the markup previously suggested:
<div class="text-center">
<ul class="pagination">
<li><a href="...">...</a></li>
</ul>
</div>
Upvotes: 8
Reputation: 1230
bootstrap 4 :
<!-- Default (left-aligned) -->
<ul class="pagination" style="margin:20px 0">
<li class="page-item">...</li>
</ul>
<!-- Center-aligned -->
<ul class="pagination justify-content-center" style="margin:20px 0">
<li class="page-item">...</li>
</ul>
<!-- Right-aligned -->
<ul class="pagination justify-content-end" style="margin:20px 0">
<li class="page-item">...</li>
</ul>
Upvotes: 1
Reputation: 5325
solution for Bootstrap 4
You can use it
Alignment
use this class justify-content-center
Change the alignment of pagination components with flexbox utilities.
and learn more about it pagination
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/>
<nav aria-label="Page navigation example">
<ul class="pagination justify-content-center">
<li class="page-item disabled">
<a class="page-link" href="#" tabindex="-1">Previous</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"><a class="page-link" href="#">3</a></li>
<li class="page-item">
<a class="page-link" href="#">Next</a>
</li>
</ul>
</nav>
Upvotes: 13
Reputation: 7778
This this, it worked for me:
Style:
.pagination {
display: flex;
justify-content: center;
}
.pagination li {
display: block;
}
And blade:
<div class="pagination">
{{ $myCollection->render() }}
</div>
Upvotes: 8
Reputation: 501
This css works for me:
.dataTables_paginate {
float: none !important;
text-align: center !important;
}
Upvotes: 0
Reputation: 2577
In v4.0.0-alpha.6:
<div class="text-center text-sm-right">
<ul class="pagination d-inline-flex">...</ul>
</div>
Upvotes: 1
Reputation: 5144
I couldn't get any of the proposed solutions to work with Bootstrap 4 alpha 6, but the following variation finally got me a centred pagination bar.
CSS override:
.pagination {
display: inline-flex;
margin: 0 auto;
}
HTML:
<div class="text-center">
<ul class="pagination">
<li><a href="...">...</a></li>
</ul>
</div>
No other combination of display
, margin
or class on the wrapping div seemed to work.
Upvotes: 3
Reputation: 4065
You can add your custom Css:
.pagination{
display:table;
margin:0 auto;
}
Thank you
Upvotes: 6
Reputation: 167172
<div class="text-center">
<ul class="pagination">
<li><a href="?p=0" data-original-title="" title="">1</a></li>
<li><a href="?p=1" data-original-title="" title="">2</a></li>
</ul>
</div>
<div class="text-xs-center">
<ul class="pagination">
<li><a href="?p=0" data-original-title="" title="">1</a></li>
<li><a href="?p=1" data-original-title="" title="">2</a></li>
</ul>
</div>
<div class="pagination text-center">
<ul>
<li><a href="?p=0" data-original-title="" title="">1</a></li>
<li><a href="?p=1" data-original-title="" title="">2</a></li>
</ul>
</div>
Give this way:
.pagination {text-align: center;}
It works because ul
is using inline-block;
Or if you would like to use Bootstrap's class:
<div class="pagination pagination-centered">
<ul>
<li><a href="?p=0" data-original-title="" title="">1</a></li>
<li><a href="?p=1" data-original-title="" title="">2</a></li>
</ul>
</div>
Upvotes: 160
Reputation: 3997
You can use the below code to center pagination
.pagination-centered {
text-align: center;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="pagination-centered">
<ul class="pagination">
<li class="active"><a href="#">1</a></li>
<li><a href="#">2</a></li>
<li><a href="#">3</a></li>
</ul>
</div>
Upvotes: -2
Reputation: 1049
For both Bootstrap 3.0 and 2.3.2, to center pagination, the .text-center class can be applied to the containing div.
Note: Where to apply the .pagination class in the markup has changed between Bootstrap 2.3.2 and 3.0. See below, or read the Bootstrap docs on pagination: Bootstrap 3.0, Bootstrap 2.3.2.
Bootstrap 3 Example
<div class="text-center">
<ul class="pagination">
<li><a href="?p=0" data-original-title="" title="">1</a></li>
<li><a href="?p=1" data-original-title="" title="">2</a></li>
</ul>
</div>
http://jsfiddle.net/mynameiswilson/eYNMu/
Bootstrap 2.3.2 Example
<div class="pagination text-center">
<ul>
<li><a href="?p=0" data-original-title="" title="">1</a></li>
<li><a href="?p=1" data-original-title="" title="">2</a></li>
</ul>
</div>
http://jsfiddle.net/mynameiswilson/84X3M/
Upvotes: 86
Reputation: 41
It works for me:
<div class="text-center">
<ul class="pagination pagination-lg">
<li>
<a href="#" aria-label="Previous">
<span aria-hidden="true">«</span>
</a>
</li>
<li><a href="#">1</a></li>
<li><a href="#">2</a></li>
<li><a href="#">3</a></li>
<li><a href="#">4</a></li>
<li><a href="#">5</a></li>
<li>
<a href="#" aria-label="Next">
<span aria-hidden="true">»</span>
</a>
</li>
</ul>
Upvotes: 4