10 Nieuwe functies van HTML 5.1 & Hoe ze te gebruiken IRL
De HTML-specificatie kreeg een grote revisie een paar weken geleden toen W3C het publiceerde nieuwe HTML 5.1-aanbeveling in november 2016. In zijn recente blog post noemde W3C de nieuwe grote release de gouden standaard, omdat HTML 5.1 ons nieuwe manieren biedt om HTML te gebruiken om flexibelere webervaringen te creëren.
In dit artikel gaan we kijken naar de nieuwe functies die u kunt gebruiken zonder JavaScript aan te raken, de verbeteringen van de JavaScript-achtergrond zijn echter ook opmerkelijk, zoals je kunt zien in de officieel wijzigingslogboek.
Merk op dat momenteel niet alle browsers al deze functies ondersteunen, dus vergeet niet om dit te doen controleer browserondersteuning voordat je ze in productie gebruikt. Als u geïnteresseerd bent in de verdere ontwikkeling van de HTML-standaard, u kunt ook de conceptversie van HTML 5.2 bekijken.
1. Definieer meerdere beeldbronnen voor responsief ontwerp
In HTML 5.1 kunt u gebruiken tag samen met de
srcset
attribuut om te maken responsieve beeldselectie mogelijk. De tag vertegenwoordigt een beeldcontainer waarmee ontwikkelaars kunnen verschillende bronnen voor afbeeldingen declareren om zich aan te passen aan de UAde viewport-afmeting, schermpixeldichtheid, schermtype en andere parameters gebruikt in reagerend ontwerp.
De tag zelf geeft niets weer, het functioneert alleen als context voor de meerdere beeldbronnen. U moet het standaard beeldbron als de waarde van de
src
attribuut van de tag en de alternatieve beeldbronnen ga binnen de
srcset
attributen van de en
elementen.
Codevoorbeeld:
2. Toon of verberg extra informatie
Met de
en
tags, dat kan voeg uitgebreide informatie toe naar een inhoudelijk stuk. De extra informatie wordt standaard niet getoond, maar als gebruikers geïnteresseerd zijn, zij hebben de mogelijkheid om een kijkje te nemen. In uw code hoort u dat te doen plaats de
tag binnen
. Na de
tag je kunt voeg de extra informatie toe je wilt je verstoppen.
Codevoorbeeld:
Foutbericht
We kunnen het downloaden van deze video niet voltooien.
- Bestandsnaam:
- yourfile.mp4
- Bestandsgrootte:
- 100 MB
- Looptijd:
- 00:05:27
Zo ziet dit codevoorbeeld eruit in Firefox 50.0.2:
3. Voeg functionaliteit toe aan het contextmenu van de browser
Met de element en zijn
type = "context"
kenmerk, dat kan voeg aangepaste functionaliteit toe naar de contextmenu van de browser. U moet toewijzen als het onderliggende element van de
label. De
ID kaart
van de element moet dezelfde waarde dragen als de
contextmenu
attribuut van het element waaraan we het contextmenu willen toevoegen (dat is de element in het onderstaande voorbeeld).
Codevoorbeeld:
De tag kan heb drie verschillende types,
"Checkbox"
, "commando"
(waaraan u een actie met JavaScript moet toevoegen), en radio-
. Het is mogelijk om meer dan één menu-item aan een contextmenu toe te voegen, maar de ondersteuning voor browsers voor deze functie is nog niet zo goed. Chrome 54 ondersteunt het niet en Firefox 50 staat alleen de aanwezigheid toe van één extra contextmenu. Hieronder kunt u zien hoe het codevoorbeeld werkt in Firefox 50.
4. Nest-kop- en voetteksten
HTML 5.1 staat je toe om nest headers en footers als elk niveau is vervat in sectie-inhoud. De onderstaande opmerking is een screenshot van de W3C-documenten en adviseert ontwikkelaars over de juiste manier van nestelen van kop- en voettekst.
Deze functie kan handig zijn als u wilt toevoegen uitgewerkte headers naar semantische sectiekaders, zoals en
. Het onderstaande codevoorbeeld maakt een zijbalk in de koptekst, de
tag is ook een segmenterend element, en voegt extra informatie toe over de auteur erin. De zijbalk in de koptekst heeft een eigen header ook, met een ondertitel en contactgegevens van de auteur.
Codevoorbeeld:
Artikel titel
Artikel intro
Andere alinea's ...
5. Gebruik cryptografische nonces voor stijlen & scripts
Met HTML 5.1, kunt u voeg cryptografische nonces toe aan stijlen en scripts. U kunt de nonce
attribuut binnen de 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. Creëer reverse link-relaties
U kunt de rev
attribuut naar uw links opnieuw. Het was eerder gedefinieerd in HTML 4, maar het werd niet ondersteund door HTML5. HTML 5.1 staat ontwikkelaars toe om gebruik dit attribuut opnieuw voor de en
elementen. De
rev
kenmerk is het tegenovergestelde van rel
, het specificeert de relatie van het huidige en het gekoppelde document in de omgekeerde richting (hoe het huidige document gerelateerd is aan het gekoppelde document).
Codevoorbeeld:
De rev
kenmerk is in de HTML 5.1-specificaties opgenomen, voornamelijk voor ondersteuning RDFa wat een veel gebruikt wordt gestructureerde gegevensopmaakopmaak, en breidt de HTML-taal uit.
7. Gebruik afbeeldingen met een breedte van nul
HTML 5.1 maakt het mogelijk om maak afbeeldingen met een breedte van nul door ontwikkelaars toe te staan de breedte
attribuut met 0
als waarde. Deze functie kan handig zijn als u afbeeldingen wilt opnemen die u zelf wilt gebruiken wil niet laten zien aan gebruikers, zoals het volgen van beeldbestanden. Afbeeldingen met een nul-breedte worden aanbevolen gebruikt samen met leeg alt
attributen.
Codevoorbeeld:
8. Afzonderlijke browsercontexten om phishing-aanvallen te voorkomen
Het gebruik van dezelfde origin-koppelingen op uw website kan u uiteindelijk in moeilijkheden brengen. Het beveiligingslek heet de target =”_blanco” exploiteren, en het is een vervelende phishing-aanval. Je kunt (veilig) testen hoe deze aanval werkt op deze slimme Github demopagina en de achtergrondcode die je hier op Github kunt vinden.
HTML 5.1 heeft het gebruik van de. Gestandaardiseerd rel = "noopener"
attribuut welke scheidt browsercontexten elimineert daarom dit probleem. Je kunt gebruiken rel = "noopener"
binnen de en
elementen.
Codevoorbeeld:
Uw link die geen problemen veroorzaakt
9. Maak een lege optie
HTML 5.1 staat ontwikkelaars toe om maak een leeg element. De
tag kan het onderliggende element zijn van de
,
, of
elementen. De mogelijkheid om leeg zijn
kan handig zijn als u niet wilt aangeven welke optie gebruikers moeten selecteren en wat handig kan zijn als u gebruiksvriendelijke formulieren wilt ontwerpen.
10. Behandel bijschriften van figuren flexibeler
De
tag staat voor a bijschrift of een legende behorend tot de element dat een container is voor visuals, zoals illustraties, foto's en diagrammen. Eerder, de
tag kan alleen worden gebruikt als het eerste of laatste kind van de element. HTML 5.1 heeft deze regel versoepeld, en nu
kan overal verschijnen binnen zijn houder.