Voordat u ontwikkelt

Voordat u de AEM-toepassing ontwikkelt die uw webpagina's ondersteunt, moet u een aantal ontwerpbeslissingen nemen. U moet bijvoorbeeld over de volgende informatie beschikken:

  • De apparaten waarvoor u zich richt
  • De doelviewportgrootten
  • De paginalay-outs voor elk van de beoogde viewportgrootte

Toepassingsstructuur

De typische AEM-toepassingsstructuur ondersteunt alle responsieve ontwerpimplementaties:

  • Paginacomponenten bevinden zich onder /apps/<application_name>/components
  • Sjablonen bevinden zich onder /apps/<application_name>/templates

Mediaquery's gebruiken

Met mediaquery's kunt u CSS-stijlen selectief gebruiken voor het weergeven van pagina's. Met de AEM-ontwikkelingsprogramma's en -functies kunt u mediaquery's effectief en efficiënt implementeren in uw toepassingen.

De W3C groep verstrekt de 🔗 aanbeveling van de Vragen van Media 0} {die deze CSS3 eigenschap en de syntaxis beschrijft.

Het CSS-bestand maken

Definieer in uw CSS-bestand mediaquery's op basis van de eigenschappen van de apparaten waarvoor u een mediaquery maakt. De volgende implementatiestrategie is effectief voor het beheren van stijlen voor elke mediaquery:

  • Gebruik de omslag van de Bibliotheek van de a Cliëntom CSS te bepalen die wordt samengesteld wanneer de pagina wordt teruggegeven.
  • Definieer elke mediaquery en de bijbehorende stijlen in afzonderlijke CSS-bestanden. Het is handig bestandsnamen te gebruiken die de apparaatfuncties van de mediaquery vertegenwoordigen.
  • Definieer stijlen die op alle apparaten in een afzonderlijk CSS-bestand van toepassing zijn.
  • In het css.txt- dossier van de omslag van de Bibliotheek van de Cliënt, orde de lijst CSS dossiers zoals vereist in het geassembleerde CSS dossier.

Het WKND leerprogrammagebruikt deze strategie om stijlen in het plaatsontwerp te bepalen. Het CSS-bestand dat door WKND wordt gebruikt, bevindt zich op /apps/wknd/clientlibs/clientlib-grid/less/grid.less .

Mediaquery's gebruiken met AEM-pagina's

het WKND steekproefprojecten Archetype van het Project van AEMgebruiken de Component van de Kern van de Pagina, die de clientlibs via het paginabeleid omvat.

Als uw eigen paginacomponent niet op de Component van de Kern van de Pagina wordt gebaseerd, kunt u de omslag van de cliëntbibliotheek in het manuscript van HTML of JSP van het ook omvatten. Als u dit doet, wordt het CSS-bestand gegenereerd en wordt ernaar verwezen met de mediaquery's die nodig zijn om het responsieve raster te laten werken.

HTL

<sly data-sly-use.clientlib="${'/libs/granite/sightly/templates/clientlib.html'}">
<sly data-sly-call="${clientlib.all @ categories='apps.weretail.all'}"/>

JSP

<ui:includeClientLib categories="apps.weretail.all"/>

Met het JSP-script wordt de volgende HTML-code gegenereerd die verwijst naar de stijlpagina's:

<link rel="stylesheet" href="/etc/designs/weretail/clientlibs-all.css" type="text/css">
<link href="/etc/designs/weretail.css" rel="stylesheet" type="text/css">

Voorvertonen voor specifieke apparaten

Met de emulator kunt u uw pagina's voorvertonen in verschillende viewportgrootten, zodat u het gedrag van uw responsieve ontwerp kunt testen. Wanneer het uitgeven van een pagina in de Console van Plaatsen, kunt u het Emulator pictogram tikken of klikken om de mededinger te openbaren.

het emulatorpictogram in de toolbar

In de emulatortoolbar kunt u het pictogram van Apparaten ontsteken of klikken om een drop-down menu te openbaren waar u een apparaat kunt selecteren. Wanneer u een apparaat selecteert, wordt de pagina aangepast aan het formaat van de viewport.

de mededingertoolbar

Apparaatgroepen opgeven

Om de apparatengroepen te specificeren die in de lijst van Apparaten verschijnen, voeg a cq:deviceGroups bezit aan de jcr:content knoop van de malplaatjepagina van uw plaats toe. De waarde van de eigenschap is een array van paden naar de knooppunten van de apparaatgroep.

De sjabloonpagina van de WKND-site is bijvoorbeeld /conf/wknd/settings/wcm/template-types/empty-page/structure . En het knooppunt jcr:content eronder bevat de volgende eigenschap:

  • Naam: cq:deviceGroups
  • Type: String[]
  • Waarde: mobile/groups/responsive

Apparaatgroepknooppunten bevinden zich in de map /etc/mobile/groups .

Responsieve afbeeldingen

Responsieve pagina's worden dynamisch aangepast aan het apparaat waarop ze worden weergegeven en bieden een betere gebruikerservaring. Het is echter ook belangrijk dat elementen zijn geoptimaliseerd voor het onderbrekingspunt en het apparaat om de laadtijd van de pagina te minimaliseren.

de Component van het Beeld van de Component van de Kerneigenschappen zoals adaptieve beeldselectie.