mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-04-25 21:20:48 +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) {
|
@media (max-width: 767.98px) {
|
||||||
.ui.pagination.menu .item:not(.active,.navigation),
|
.ui.pagination.menu .item:not(.active,.navigation),
|
||||||
.ui.pagination.menu .item.navigation span.navigation_label {
|
.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