Hoe u amp-img en amp-video kunt gebruiken om uw website sneller te maken

AMP is in een notendop een methode om websites te optimaliseren om sneller en performanter te zijn.

AMP staat voor 'Accelerated Mobile Pages' en hoewel de vermelde focus ligt op prestaties op mobiele apparaten, zijn de snelheidsvoordelen die het kan brengen even nuttig op niet-mobiele apparaten. AMP bevat een reeks optimalisatiemethoden die verschillende soorten voordelen bieden, maar de kracht om sites sneller te maken is aantoonbaar het belangrijkst op beeld- en videozware sites.

Gegeven snellere sites zorgen voor meer betrokken bezoekers, mogelijk hogere rankings van zoekmachines (en dus een grotere blootstelling), het is zeker de moeite waard om na te denken over AMP wanneer je de volgende web-gebaseerde showcase van je werk maakt.

AMP is een open source-project met Google erachter en is nu in ontwikkeling sinds ongeveer september 2015, met AMP-versies van sites die sinds 24 februari van dit jaar in de zoekresultaten van Google worden weergegeven. We hebben AMP besproken sinds de publieke lancering eerder dit jaar, dus het is een geweldig idee om te lezen "AMP Project: zal het je sites sneller maken" als je wat achtergrondinformatie wilt voordat we verder gaan.

In dat artikel vindt u veel informatie over de algemene waarde van werken met AMP, maar we gaan een beetje meer direct kijken naar de twee meest relevante aspecten van het werken met afbeeldingen en video: AMP's custom  en elementen.

Vuurtoren door ssuaphoto / PhotoDune. AMP kan uw sites helpen beter te presteren bij het zoeken.

Wat zijn  en ?

Wanneer u een pagina maakt op basis van AMP-vereisten, gebruikt u een reeks aangepaste elementen in plaats van enkele van de standaard HTML-elementen waaraan u wellicht bent gewend.

  • In plaats van een regulier te gebruiken element dat u zult gebruiken
  • In plaats van een  element dat u zult gebruiken

Wanneer u deze aangepaste elementen gebruikt, maakt u automatisch gebruik van een aantal voordelen die inherent zijn aan AMP. Laten we eens kijken naar wat ze zijn en waarom ze jouw overweging waard zijn.

Waarom gebruiken en ?

U weet al dat AMP wordt verondersteld om uw sites sneller te maken, maar wat specifiek de en elementen te bieden hebben? De voordelen die het meest relevant zijn, zijn als volgt.

Trage voortgang

Als u een pagina met meerdere afbeeldingen hebt, moet elke afbeelding standaard in één treffer worden geladen. Dit kan heel gemakkelijk de totale laadtijd van uw site naar een langere tijd slepen. Hoe hoger uw initiële laadtijd, des te groter de kans dat bezoekers uw site verlaten en des te erger kunt u in zoekmachines.

Met een techniek die 'Lazy Loading' wordt genoemd, kun je in plaats daarvan alleen de eerste paar afbeeldingen laden en de rest later komen. Er is voldoende inhoud geladen voor de bezoeker om de pagina te bekijken en de resterende afbeeldingen worden "lazy loaded" wanneer de bezoeker naar beneden scrolt. Dit kan uw laadsnelheid aanzienlijk verbeteren.

In de tests die ik bijvoorbeeld uitvoerde als onderdeel van mijn artikel "AMP-project: zal het uw sites sneller maken", merkte ik dat op een gesimuleerde mobiele verbinding het 26 seconden duurde om een ​​pagina met vijf 500Kb-afbeeldingen te laden. Met een AMP-versie van dezelfde site werd de laadtijd teruggebracht tot 16 seconden.

Geen verloop van de lay-out

Een van de belangrijkste voordelen van het gebruik van AMP is dat het probleem van het meerdere keren opnieuw plaatsen van de pagina-indeling wordt voorkomen. 

Terwijl een pagina wordt weergegeven, hebben de elementen van niet-geladen media aanvankelijk geen hoogte of breedte. Daarom legt de browser dingen uit alsof het genoemde medium geen deel uitmaakt van de pagina. Wanneer een afbeelding klaar is met laden, moet de lay-out opnieuw worden berekend, waarbij andere elementen moeten worden verplaatst en van vorm moeten worden veranderd om in de afbeelding te passen, iets dat "reflowing" wordt genoemd. Als andere media ook nog moeten worden geladen, moet de pagina telkens opnieuw worden geplaatst voor elk item.

Vooral op mobiele apparaten kunnen bezoekers gefrustreerd raken als ze al verloofd zijn en waar ze op gefocust zijn, plotseling uit het zicht springt als gevolg van reflow. Dit kan heel gemakkelijk leiden tot verminderde aandacht van bezoekers of het verlaten van de site, vooral als dit meerdere keren gebeurt.

Met AMP treedt nooit opnieuw vloeien op. Dit komt omdat elk stukje media een tijdelijke aanduiding van de juiste grootte heeft toegevoegd aan de lay-out vanaf het begin. Zodra het medium is geladen, vervangt het de tijdelijke aanduiding, er is geen hervulling nodig.

Gratis toegang tot CDN

Opslag en bandbreedte voor grote hoeveelheden media kunnen vrij snel duur worden en het kiezen van een host die snel aan kijkers over de hele wereld kan leveren, is niet altijd eenvoudig.

Wanneer u AMP echter gebruikt, krijgt u gratis toegang tot een door Google verstrekt CDN. Zolang u een pagina maakt die de AMP-validatie passeert, slaat Google automatisch uw HTML-documenten, JS-bestanden en afbeeldingen in de AMP CDN in de cache op..

Relatief Handsfree

De waarheid is de meeste dingen die AMP doet, want je kunt ook op andere manieren doen via verschillende scripts en methodologieën. Een van de grote voordelen van het gebruik van AMP is echter dat u niet op de hoogte hoeft te zijn van de technische details die gepaard gaan met het instellen van gelijkwaardige optimalisaties..

Door AMP te gebruiken, kunt u voorkomen dat u handmatig meerdere scripts en processen moet kiezen, configureren en onderhouden. In plaats daarvan gebruikt u AMP gewoon zoals voorgeschreven en gebeurt alles op de achtergrond zonder uw hands-on betrokkenheid.

Aan de slag met AMP

Voordat we ingaan op de details van het gebruik en je moet weten hoe je een AMP-pagina kunt maken met de vereiste boilerplate-code. We hebben besproken hoe je dit in een andere tutorial kunt doen, zodat je de bal aan het rollen krijgt, waarna je naar "Een basis AMP-pagina van scratch maken" kunt gaan.

Het is niet nodig om de volledige tutorial te doen, dus als je gewoon doorgaat tot het einde van de sectie getiteld "Omgaan met Inline CSS", ben je helemaal klaar om terug te komen en hier weer op te halen.

Hoe te gebruiken

Op een AMP-pagina die u gaat gebruiken om elke afbeelding te laden. Laten we eens kijken hoe de code correct wordt gebruikt en wat elk van de bijbehorende attributen doet.

(U kunt de volledige documentatie vinden voor op de verwijzingswebsite van het AMP-project).

Essentiële insluitsels

Bij het toevoegen van een  element zijn er een paar essentiële kenmerken die u moet opnemen. Zoals met een gewone element dat u nodig heeft om a te gebruiken src attribuut om de locatie van uw afbeelding te specificeren, en een alt attribuut om een ​​fallback voor tekst in te stellen.

Het is ook een eis in AMP die u opgeeft hoogte en breedte elke keer. Dit komt omdat AMP de kenmerken height en width gebruikt om de grootte van placeholders in te stellen voordat de afbeelding wordt geladen.

Als u zich zorgen maakt over hoe u afbeeldingen responsief kunt laten reageren omdat u vaste dimensies instelt, hoeft u zich geen zorgen te maken omdat AMP functionaliteit heeft voor het afhandelen van responsieve aanpassingen, die we later zullen bespreken.

Een eenvoudig voorbeeld van de element met deze essentiële insluitsels is:

Met behulp van srcset

De element biedt een srcset kenmerk dat kan worden gebruikt om alternatieve afbeeldingen op te geven die op verschillende breedten of pixeldichtheden moeten worden weergegeven. 

Het is op dezelfde manier gebruikt als in een gewone  element, zodat u een volledige run down krijgt op het attribuut op: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img#attr-srcset

Als u bijvoorbeeld verschillende afbeeldingen met verschillende pixeldichtheden wilt gebruiken, kunt u het volgende gebruiken:

Of om verschillende afbeeldingen te laden, afhankelijk van de breedte van de viewport die u mogelijk gebruikt:

Let op, als u waarden gebruikt die bevatten w de src kenmerk wordt genegeerd in browsers die srcset ondersteunen.

Attribution toevoegen

Als u een afbeelding moet vermelden die u kunt gebruiken attributie, bijvoorbeeld:

Plaatsaanduidingen voor styling

Als u de weergave van de plaatsaanduidingen die op uw pagina verschijnen wilt beheren terwijl afbeeldingen worden geladen, kunt u dit doen met CSS die is getarget op amp-img element, bijvoorbeeld:

amp-img achtergrondkleur: grijs; 

Hoe te gebruiken

In een AMP-pagina die u gebruikt wanneer u een video vanuit uw eigen bron wilt insluiten. Als u video van derden wilt opnemen, zoals van YouTube of via een iFrame, kunt u in plaats daarvan andere elementen gebruiken zoals of .

(Nogmaals, u kunt de volledige documentatie vinden voor op de verwijzingswebsite van het AMP-project).

Essentiële insluitsels

Zoals met , er zijn een paar essentiële insluitsels bij gebruik . Nogmaals src is vereist om de locatie van de video op te geven, en beide hoogte en breedte zijn vereist, zodat AMP de pagina tijdens het laden correct kan opmaken.

Een basisvoorbeeld met vereiste kenmerken kan zijn:

 

Een fallback toevoegen

Als de video om een ​​of andere reden niet wordt geladen of weergegeven, is het mogelijk om een ​​fallback in te stellen door een a te nestelen

binnen in de element. De
moet het attribuut bevatten terugvallen.

Bijvoorbeeld:

 

Video kan niet worden geladen. Controleer of uw browser HTML5-video ondersteunt.

Meerdere bronnen toevoegen

De element kan worden genest binnen de element om meerdere bestandsindelingen te bieden en de waarschijnlijkheid van compatibiliteit in verschillende browsers te maximaliseren.

Dit werkt op dezelfde manier als in een normale HTML5 element dus voor volledige details ga naar: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/source

Als voorbeeld:

 

Video kan niet worden geladen. Controleer of uw browser HTML5-video ondersteunt.

Een "Poster" instellen

Voordat het afspelen van een video is gestart, wordt het eerste frame van de video standaard weergegeven. Als u echter wilt aanpassen wat wordt getoond, kunt u een afbeelding opgeven met behulp van het attribuut poster.

Bijvoorbeeld:

 

Extra attributen

Evenals wat we hierboven hebben besproken, zijn er een paar extra attributen die u kunt gebruiken met de element. Ze zijn als volgt.

Automatisch afspelen

Standaard worden video's niet automatisch afgespeeld. Als u dit wilt overschrijven, neemt u het kenmerk op automatisch afspelen:

 

controls

Besturingselementen van een video worden niet weergegeven tenzij u het kenmerk toevoegt controls:

 

Lus

Als u een videoherhaling wilt maken, neemt u het kenmerk oneindig op lus:

 

Gedempt

Als u het geluid van een video wilt uitschakelen, voegt u het kenmerk toe gedempt:

 

Het kenmerk "layout"

AMP's  en  elementen kunnen het attribuut hebben lay-out ingesteld op een van de zes waarden, die ervoor zorgen dat het element zich anders gedraagt:

  • sympathiek
  • vullen
  • vast
  • vaste hoogte
  • flex-post
  • geen scherm

Laten we even kijken naar wat iedereen doet.

(Vind hier de volledige lay-outdocumenten: https://github.com/ampproject/amphtml/blob/master/spec/amp-html-layout.md)

sympathiek

Uw lay-outinstelling "ga naar" zou moeten zijn sympathiek in de meeste gevallen - gebruik dit als u niet zeker weet wat u moet kiezen. Hierdoor wordt het element uitgebreid tot de maximale breedte van het bovenliggende element, terwijl de hoogte-breedteverhouding behouden blijft.

De mogelijkheid om dit kenmerk toe te voegen, is waarom u zich geen zorgen hoeft te maken over het garanderen van reactievermogen ondanks expliciete instellingen hoogte en breedte waarden op elementen.

vullen

De vullen instelling is bijna hetzelfde als sympathiek, het element wordt echter uitgebreid tot de maximale breedte en hoogte van de ouder, ongeacht de beeldverhouding.

vast

Met behulp van een vast lay-out houdt het element op de opgegeven hoogte en breedte, zonder de mogelijkheid om het formaat te wijzigen.

vaste hoogte

Met de vaste hoogte Als u een element instelt, wordt de breedte uitgerekt om in het bovenliggende element te passen, maar blijft de hoogte hetzelfde. 

flex-post

Als je de CSS hebt toegepast weergave: flex; naar de ouder van een element, kunt u de flex-post lay-outwaarde om alle beschikbare ruimte in het bovenliggende element te vullen. Als meerdere kinderen van dezelfde ouder de flex-post lay-out delen ze de ruimte op dezelfde manier.

geen scherm

De geen scherm instelling wordt gebruikt om een ​​element te verbergen. Het doel is om toe te staan ​​dat inhoud wordt weergegeven bij de actie van een gebruiker, bijvoorbeeld in combinatie met de element.

Afsluiten

Dat omvat alle essentiële aspecten van het werken met AMP's gebruik  en elementen, van waarom je moet ze gebruiken tot hoe.

AMP biedt een geconsolideerde, handsfree manier om mediazware sites te optimaliseren die zorgen voor een veel betere mobiele ervaring, terwijl tegelijkertijd de desktopbeleving verbetert.

Raadpleeg de onderstaande links voor meer informatie.

Gerelateerde Links:

  • AMP-project: zal het uw sites sneller maken
  • Een basis AMP-pagina maken van kras
  • AMP in 60 seconden
  • Snelle tip: maak de inline CSS van AMP eenvoudiger met Jade of PHP
  • Introductie van het Accelerated Mobile Pages Project Google officiële blog
  • www.ampproject.org
  • AMP-project op Github
  • AMP WordPress-plug-in
  • Accelerated Mobile Pages (AMP) voor WordPress op Envato Market