
The Patterns 225
This pattern also has the advantage of being very common on the Web, especially (though
not exclusively) for search results. It’s easy to implement, and may come prebuilt in some
systems.
How
First, you’ll need to decide how many items will be in each page. Base this on the amount
of space each item takes up, the screen sizes users are likely to have (don’t forget to con-
sider mobile platforms), the time it takes to load or show the items, and the likelihood that
the user will find one or more desired items in the first page.
This is fairly important: the first page should be enough! The odds are good that most
users won’t go beyond that first page of items, so if they can’t find what they’re looking for
in that first page, they may get discouraged. (If you’re dealing with a search facility, make
sure that it returns high-quality results at the top of that first page.)
On pages that users may linger over, such as lists of products or videos, consider letting
the user set the number of items per page. Some people are irritated by having to page
back and forth to see all the items of interest.
Next, you’ll need to decide how to present the pagination controls. They’re usually found
at the bottom of the page, but some designs also have them at the top—if a user really does
need to go to a subsequent page of items, there’s no need to make him scroll all the way
down the page.
Consider these elements in the pagination control:
• Previous and Next links, with arrows or triangles for emphasis. Disable the Previous
link when the user is on the first page and the Next link when the user is on the last
page (if there is a known last page).
• A link to the first page. This should always be visible; remember that the first page is
supposed to contain the most relevant items.
• A sequence of numbered links to pages. Don’t link the page the user is on, of course;
instead, show it in a contrasting color and type size to give the user a “You are here”
navigational clue.
• Ellipses to cut out parts of the sequence if there are too many pages to reasonably
show in the control—more than 20, for instance. Again, keep the first page, and the
last page if the list isn’t “bottomless.” Keep the pages immediately before and after the
user’s current page. Elide the rest.
• Optionally, the total number of pages (if known). You could do this in several ways,
such as showing text like “Page 2 out of 45,” or simply showing the last page as a
numbered link at the end of the pagination control. See the examples for some ideas.