@@Achot
Derzeit habe ich es so
<?php if($object->layout == "raster"): ?> <a class="aktuell" href="<?php echo $_SERVER['PHP_SELF']; ?>?l=raster">Raster</a> - <a href="<?php echo $_SERVER['PHP_SELF']; ?>?l=liste">Liste</a> <?php else: ?> <a href="<?php echo $_SERVER['PHP_SELF']; ?>?l=raster">Raster</a> - <a class="aktuell" href="<?php echo $_SERVER['PHP_SELF']; ?>?l=liste">Liste</a> <?php endif; ?>
Die aktuelle Seite solltest du mit dem ARIA-Attribut <a aria-current="page" href="…">
kennzeichnen, dann haben auch Screenreader-Nutzer was davon. Die Klasse "aktuell"
brauchst du dann nicht mehr. Zum Stylen kannst du statt des Klassenselektors .aktuell
den Attributselektor [aria-current="page"]
verwenden.
Den Pfad zur aktuellen Seite $_SERVER['PHP_SELF']
musst du auch nicht reinschreiben; die Links kannst du relativ angeben: <a href="?l=liste">
bzw. <a href="?l=raster">
.
Es macht auch wenig Sinn, die aktuelle Ansicht zu verlinken. Da einfach das href
-Attribut weglassen. Sähe dann so aus:
<?php if($object->layout == "raster"): ?>
<a aria-current="page">Raster</a> -
<a href="?l=liste">Liste</a>
<?php else: ?>
<a href="?l=raster">Raster</a> -
<a aria-current="page">Liste</a>
<?php endif; ?>
Eine andere Möglichkeit, dasselbe HTML zu generieren:
<a
<?php if($object->layout == "raster"): ?>
aria-current="page"
<?php else: ?>
href="?l=raster"
<?php endif; ?>
>Raster</a> -
<a
<?php if($object->layout == "liste"): ?>
aria-current="page"
<?php else: ?>
href="?l=liste"
<?php endif; ?>
>Liste</a>
(Kaputte Syntax-Highlighter sind kaputt.)
LLAP 🖖
--
“When UX doesn’t consider all users, shouldn’t it be known as ‘Some User Experience’ or... SUX? #a11y” —Billy Gregory
“When UX doesn’t consider all users, shouldn’t it be known as ‘Some User Experience’ or... SUX? #a11y” —Billy Gregory