10 nye funktioner i HTML 5.1 og hvordan man bruger dem IRL
HTML-specifikationen fik en større revision et par uger siden da W3C offentliggjorde sin ny HTML 5.1 anbefaling i november 2016. I sit seneste blogindlæg kaldte W3C den nye store udgivelse guldstandarden, som HTML 5.1 giver os nye måder, hvorpå vi kan bruge HTML til at skabe mere fleksible weboplevelser.
I denne artikel skal vi se på de nye funktioner, du kan gøre brug af uden at røre ved JavaScript, Men forbedringerne af JavaScript-baggrunden er også bemærkelsesværdige, som du kan se det i officiel ændring log.
Bemærk, at i øjeblikket ikke alle browsere understøtter alle disse funktioner, så glem ikke at check browser support før du bruger dem i produktion. Hvis du er interesseret i videreudvikling af HTML-standarden, Du kan også tjekke udkastet til HTML 5.2.
1. Definer flere billedressourcer til responsivt design
I HTML 5.1 kan du bruge tag sammen med
srcset
attribut til at gøre lydhør billedvalg muligt. Det tag repræsenterer en billedbeholder som giver udviklere mulighed for erklære forskellige billedressourcer for at kunne tilpasse sig UAs visningsstørrelse, skærm pixeldensitet, skærmtype og andre parametre, der anvendes i lydhør design.
Det tag selv viser ikke noget, det fungerer kun som kontekst for de flere billedressourcer. Du skal erklære standard billedressource som værdien af
src
attributten til tag og alternative billedressourcer gå inden for
srcset
attributter af og
elementer.
Kodeeksempel:
2. Vis eller skjul ekstra information
Med
og
tags, du kan Tilføj udvidet information til et indholdsstykke. Den ekstra information vises ikke som standard, men hvis brugerne er interesserede, de har mulighed for at kigge. I din kode skal du placere
tag indeni
. Efter
tag du kan Tilføj de ekstra oplysninger du ønsker at skjule.
Kodeeksempel:
Fejl besked
Vi kunne ikke afslutte at downloade denne video.
- Filnavn:
- yourfile.mp4
- Filstørrelse:
- 100 MB
- Varighed:
- 00:05:27
Sådan ser dette kodeeksempel ud i Firefox 50.0.2:
3. Tilføj funktionalitet til browserens kontekstmenu
Med element og dets
type = "kontekst"
attribut, du kan Tilføj tilpasset funktionalitet til kontekstmenuen i browseren. Du skal tildele som barnets element i
tag. Det
id
af element skal bære samme værdi som
sammenhængsafhængige
attribut af det element, som vi vil tilføje kontekstmenuen til (hvilket er element i eksemplet nedenfor).
Kodeeksempel:
Det tag kan har tre forskellige typer,
"Afkrydsningsfeltet"
, "kommando"
(som du skal tilføje en handling med JavaScript), og radio
. Det er muligt at tilføje mere end et menupunkt til en kontekstmenu, dog browser support for denne funktion er ikke særlig godt endnu. Chrome 54 understøtter det ikke, og Firefox 50 tillader kun tilstedeværelsen af en ekstra kontekstmenu. Nedenfor kan du se, hvordan kodeeksemplet fungerer i Firefox 50.
4. Nesthoveder og fodfødder
HTML 5.1 tillader dig at nesthoveder og fodfødder hvis hvert niveau er indeholdt i sektionsindhold. Noten nedenfor er et skærmbillede fra W3C-dokumenterne og rådgiver udviklere om den rigtige måde at header og sidebemærkning på..
Denne funktion kan være nyttig, hvis du vil tilføje uddybede overskrifter til semantiske snitelementer, såsom og
. Kodeeksemplet nedenfor opretter et sidebjælke inde i overskriften, den
tag er også et snitelement, og tilføjer ekstra information om forfatteren inde i den. Sidebjælken inde i overskriften har sit eget overskrift også med en undertekst og forfatterens kontaktoplysninger.
Kodeeksempel:
Artikel Titel
Artikel intro
Andre afsnit ...
5. Brug kryptografiske nonces til stilarter og scripts
Med HTML 5.1 kan du Tilføj kryptografiske nonces til stilarter og scripts. Du kan bruge nonce
attribut indenfor and the
elements. A cryptographic nonce is a randomly generated number that can be used only once, and has to be regenerated for every page request. A nonce can be used by the Content Security Policy of a website to decide if the certain script or style should be applied on the page. In Google Developers' Web Fundamentals you can read more on the proper usage of nonces and CSP.
Below, you can see a simple code example of how to use the nonce
attribute, however note that in a real world scenario its value shouldn't be hard-coded but randomly generated.
Code example:
6. Opret omvendt link forhold
Du kan tilføje rev
attribut til dine links igen. Den blev tidligere defineret i HTML 4, men den blev ikke understøttet af HTML5. HTML 5.1 tillader udviklere at Brug denne attribut igen til og
elementer. Det
rev
attributten er modsatte af rel
, det specificerer forholdet mellem det nuværende og det linkede dokument i omvendt retning (hvordan det aktuelle dokument er relateret til den tilknyttede).
Kodeeksempel:
Det rev
attributten er primært medtaget i HTML 5.1 specs support RDFa som er en meget udbredt struktureret data markup format, og udvider HTML-sproget.
7. Brug nulbreddebilleder
HTML 5.1 gør det muligt at lav nulbredde billeder ved at tillade udviklere at bruge bredde
attribut med 0
som værdi. Denne funktion kan være nyttig, hvis du vil inkludere billeder, som du ønsker ikke at vise til brugere, såsom sporing af billedfiler. Nulbreddebilleder anbefales at være bruges sammen med tomt alt
egenskaber.
Kodeeksempel:
8. Separat browserkontekster for at forhindre phishing-angreb
Brug af samme oprindelse links på din hjemmeside kan i sidste ende få dig i nogle problemer. Sårbarheden hedder target =”_blank” udnytte, og det er et uhyggeligt phishing-angreb. Du kan (sikkert) teste hvordan dette angreb virker på denne kloge Github demo side, og dens baggrundskode kan du finde her på Github.
HTML 5.1 har standardiseret brugen af rel = "noopener"
attribut som adskiller browserkontekster eliminerer derfor dette problem. Du kan bruge rel = "noopener"
indenfor og
elementer.
Kodeeksempel:
Dit link, der ikke giver problemer
9. Opret en tom indstilling
HTML 5.1 tillader udviklere at lav en tom element. Det
tag kan være barnets element i
,
, eller
elementer. Muligheden for have en tom
kan være nyttigt, hvis du ikke ønsker at foreslå hvilken indstilling brugere skal vælge, og som kan være nyttige, når du vil designe brugervenlige formularer.
10. Håndter figurtekster mere fleksibelt
Det
tag repræsenterer a billedtekst eller en legende tilhører element som er en beholder til billeder, såsom illustrationer, fotos og diagrammer. Tidligere var
tag kun kunne bruges som første eller sidste barn i element. HTML 5.1 har løsnet denne regel, og nu
kan vises overalt inden for sin beholder.