mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-04-25 13:10:19 +03:00
fix(ui): make pagination labels always visible to screenreader
- The pagination labels 'First', 'Previous', 'Next' and 'Last' are hidden away when the screen width becomes smaller. However this also hides them from the screen reader. Instead of using `display: none`, use some well-known tricks to still make them visible to the screen reader. - Add E2E test. - Resolves Codeberg/Community#1858
This commit is contained in:
parent
02c5ce77db
commit
b6072496d4
2 changed files with 24 additions and 1 deletions
15
tests/e2e/pagination.test.e2e.ts
Normal file
15
tests/e2e/pagination.test.e2e.ts
Normal file
|
@ -0,0 +1,15 @@
|
|||
// @watch start
|
||||
// template/base/paginate.tmpl
|
||||
// services/context/pagination.go
|
||||
// @watch end
|
||||
|
||||
import {expect} from '@playwright/test';
|
||||
import {test} from './utils_e2e.ts';
|
||||
import {accessibilityCheck} from './shared/accessibility.ts';
|
||||
|
||||
test('Pagination a11y', async ({page}) => {
|
||||
await page.goto('/explore/repos');
|
||||
|
||||
await expect(page.locator('.pagination')).toBeVisible();
|
||||
await accessibilityCheck({page}, ['.pagination'], [], []);
|
||||
});
|
|
@ -952,7 +952,15 @@ img.ui.avatar,
|
|||
@media (max-width: 767.98px) {
|
||||
.ui.pagination.menu .item:not(.active,.navigation),
|
||||
.ui.pagination.menu .item.navigation span.navigation_label {
|
||||
display: none;
|
||||
position: absolute;
|
||||
width: 1px;
|
||||
height: 1px;
|
||||
padding: 0;
|
||||
margin: -1px;
|
||||
overflow: hidden;
|
||||
clip: rect(0, 0, 0, 0);
|
||||
white-space: nowrap;
|
||||
border-width: 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue