Why does abbr> not work on desktop devices?

Forbedring af <abbr>-tagget på mobile enheder

25/11/2022

Rating: 4.35 (5556 votes)
Indholdsfortegnelse

Optimering af -tagget til Mobilbrugere

I en verden, hvor information udveksles med lynets hastighed, er brugen af forkortelser og akronymer udbredt. Disse forkortelser findes overalt på nettet og er så almindelige, at HTML har introduceret et specifikt tag, <abbr>, til at identificere dem og forbedre den semantiske struktur på websider. Mens <abbr>-tagget tilbyder semantisk værdi og forbedrer tilgængeligheden ved at tillade visning af den fulde betydning via en tooltip ved museover, opstår der udfordringer, når disse websider tilgås fra mobile enheder.

How abbr srcset=
tag is displayed on mobile devices?" width="1280" height="720"/> In this article, I’ll show you a small CSS snippet that can enhance how the tag is displayed on mobile devices. The tag is usually used in conjunction with the title attribute, which has as its value the meaning of the abbreviation or the acronym (i.e. the extended form).

På mobile enheder eksisterer konceptet 'hover' ikke på samme måde som på desktops. Touchskærme reagerer på berøring, ikke på en svævende markør. Dette skaber en forhindring for brugere, der forsøger at få adgang til den skjulte information, som <abbr>-tagget tilbyder. Denne artikel vil dykke ned i, hvordan man kan forbedre visningen af <abbr>-tagget på mobile enheder og sikre en problemfri oplevelse for alle brugere.

Forståelse af <abbr>-tagget

<abbr>-tagget bruges typisk sammen med `title`-attributten. Værdien af `title`-attributten indeholder den fulde betydning af forkortelsen eller akronymet. For eksempel, hvis vi ønsker at tale om LAMP-stacken, kan vi skrive:

<abbr title="Linux Apache MySQL PHP">LAMP</abbr>

Udover den semantiske værdi giver dette brugerne mulighed for at opdage den fulde betydning ved at holde musen over tagget. Uden yderligere styling giver browsere normalt ingen visuel indikation af denne 'skjulte' information. Dette kan være frustrerende for brugere, der ikke umiddelbart kender betydningen. For at afhjælpe dette anvender webdesignere ofte følgende CSS-kode:

abbr[title] { border-bottom: 1px dashed #ADADAD; cursor: help; }

Denne stil tilføjer en stiplet grå kant under <abbr>-tagget og ændrer markøren til et hjælpesymbol, når brugeren holder musen over det. Dette giver en klar visuel indikation af, at der er yderligere information tilgængelig.

Udfordringen med Mobilenheder

Som nævnt er den traditionelle 'hover'-funktionalitet, der udløser tooltips, ikke tilgængelig på touchskærmsenheder. Når en bruger trykker på en <abbr> på en mobil, sker der typisk ingenting, hvilket efterlader dem uden adgang til den fulde betydning af forkortelsen. Dette er et væsentligt problem for brugervenligheden og tilgængeligheden.

Can abbr tag be clicked on a mobile screen?
We can click the abbr tag on a mobile screen or PC screen and it will work in the same way without any duplication. I have tried it on Chrome and it's working fine. Farhan Basheer. While I like this solution, the data-title is not entirely visible when it is positioned too much to the right or bottom of the screen.

En velkendt teknik fra trykte medier som bøger og aviser er at inkludere den fulde betydning i parentes lige efter forkortelsen. For eksempel ville LAMP-eksemplet se således ud:

LAMP (Linux Apache MySQL PHP)

Denne metode er intuitiv og fungerer på tværs af alle enheder, inklusive mobile.

Implementering af Løsningen

For at adressere dette problem kan vi kombinere den traditionelle styling for desktops med en mobilvenlig løsning, der udnytter parentes-teknikken. Dette kræver brug af mediekvalifikatorer (media queries), CSS's `content`-egenskab og `attr()`-udtrykket.

Mediekvalifikatorer tillader os at anvende specifik CSS-regler baseret på enhedens egenskaber, såsom skærmbredde. `content`-egenskaben bruges til at indsætte genereret indhold, ofte i pseudo-elementer som ::after eller ::before. `attr()`-udtrykket giver os mulighed for at hente værdien af et hvilket som helst attribut på et element, såsom `title`-attributten på et <abbr>-tag.

Ved at anvende en 'mobile-first'-tilgang, hvor vi designer for mobile enheder først og derefter tilføjer styling for større skærme, kan vi opnå følgende CSS-kode:

abbr[title]:after { content: " (" attr(title) ")"; } @media screen and (min-width: 1025px) { abbr[title] { border-bottom: 1px dashed #ADADAD; cursor: help; } abbr[title]:after { content: ""; } }

I dette kodeeksempel bruges 1025px som et 'breakpoint' for desktops, men dette kan justeres efter behov. Inden for mediekvalifikatoren nulstilles indholdet af ::after-pseudo-elementet til en tom streng, hvilket effektivt fjerner parentes-tilføjelsen på desktops. Dette sikrer, at den oprindelige hover-funktionalitet bibeholdes på større skærme, mens mobilbrugere får vist den fulde betydning direkte.

How abbr srcset=
tag is displayed on mobile devices?" width="1200" height="600"/> In this article, I’ll show you a small CSS snippet that can enhance how the tag is displayed on mobile devices. The tag is usually used in conjunction with the title attribute, which has as its value the meaning of the abbreviation or the acronym (i.e. the extended form).

Forbedret Tilgængelighed og Brugeroplevelse

Denne metode er bredt kompatibel med alle moderne browsere, inklusive Internet Explorer fra version 9 og frem. For ældre browsere som Internet Explorer 8, der understøtter `content`-egenskaben og `attr()`-udtrykket, men ikke mediekvalifikatorer, kan man anvende shims som Respond.js eller css3-mediaqueries.js for at opnå lignende funktionalitet.

Udover denne løsning kan vi også overveje at gøre <abbr>-tagget interaktivt på mobile enheder ved at simulere en tooltip-lignende oplevelse. Dette kan gøres ved at tilføje `tabindex="0"` til <abbr>-tagget for at give tastaturbrugere mulighed for at fokusere på det. Derefter kan vi bruge :hover og :focus pseudo-klasserne til at vise en brugerdefineret tooltip:

abbr[title] { position: relative; text-decoration: underline dotted; } abbr[title]:hover::after, abbr[title]:focus::after { content: attr(title); position: absolute; left: 0; bottom: -30px; /* Juster efter behov */ width: auto; white-space: nowrap; background-color: #1e1e1e; color: #fff; border-radius: 3px; box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.4); font-size: 14px; padding: 3px 5px; } 

Denne tilgang giver en mere robust løsning, der efterligner den oprindelige tooltip-funktionalitet og fungerer på både desktops (via hover og tastaturfokus) og mobile enheder (via berøring/tap, som ofte udløser hover-lignende begivenheder i browsere).

Sammenligning af Metoder

Her er en oversigt over de forskellige metoder til at håndtere <abbr>-tagget på tværs af enheder:

MetodeDesktop (Hover)Mobil (Touch)Tilgængelighed (Tastatur)Kompleksitet
Standard (ingen styling)Ingen visuel indikationIngen interaktionIngen interaktionLav
CSS (stiplet kant)Visuel indikation, hover tooltipIngen interaktionIngen interaktionMedium
CSS (parentes med media query)Stiplet kant, hover tooltipViser forkortelse med fuld betydning i parentesStiplet kant, hover tooltipMedium
CSS (brugerdefineret tooltip)Stiplet kant, brugerdefineret tooltip på hover/focusBrugerdefineret tooltip på tapBrugerdefineret tooltip på focusHøj

Ofte Stillede Spørgsmål (FAQ)

  • Hvorfor virker <abbr>-tagget ikke på mobilenheder?
    På mobilenheder mangler den traditionelle 'hover'-funktion, som browsere bruger til at vise tooltips for <abbr>-tagget. Touchskærme reagerer på berøring, ikke på at markøren svæver over elementet.
  • Hvordan kan jeg få <abbr>-tagget til at virke på touchskærme?
    Du kan bruge CSS med mediekvalifikatorer til at indsætte den fulde betydning i parentes efter forkortelsen på mobile enheder, eller implementere en brugerdefineret tooltip, der udløses ved berøring.
  • Er der en JavaScript-løsning til <abbr>-tagget?
    Ja, JavaScript kan bruges til at detektere touch-enheder og dynamisk vise betydningen af <abbr>-tagget, f.eks. via en `click`-event handler. Dog er CSS-baserede løsninger ofte at foretrække for bedre performance og for at undgå afhængighed af JavaScript.
  • Hvilken metode er bedst til at vise <abbr>-information på tværs af enheder?
    En kombination af CSS-styling med mediekvalifikatorer og den parentes-baserede indsættelse af betydningen er en robust og bredt kompatibel løsning. Implementering af en brugerdefineret tooltip giver den mest ensartede oplevelse, men kræver mere arbejde.

Konklusion

Optimering af <abbr>-tagget til mobile enheder er afgørende for at sikre en inkluderende og brugervenlig weboplevelse. Ved at anvende teknikker som mediekvalifikatorer, `content`-egenskaben og `attr()`-udtrykket, kan vi effektivt levere den skjulte information til brugere på touchskærmsenheder. Inspiration fra trykte medier viser, at simple, velkendte løsninger ofte er de mest effektive. Ved at implementere disse CSS-strategier kan webudviklere forbedre tilgængeligheden og sikre, at forkortelser og akronymer er forståelige for alle, uanset hvilken enhed de bruger.

Hvis du vil læse andre artikler, der ligner Forbedring af -tagget på mobile enheder, kan du besøge kategorien Teknologi.

Go up