Creazione di temi modulo adattivo personalizzati creating-custom-adaptive-form-themes
Prerequisiti prerequisites
- Conoscenza del framework LESS (Leaner CSS)
- Come creare una libreria client in Adobe Experience Manager
- Creazione di un modello di modulo adattivo per utilizzare il tema creato
Tema modulo adattivo adaptive-form-theme
Un tema modulo adattivo è una libreria client AEM utilizzata per definire gli stili (aspetto e aspetto) di un modulo adattivo.
Crea un modello adattivo e applica il tema al modello. Quindi utilizza questo modello personalizzato per creare un modulo adattivo.
Per creare un tema modulo adattivo to-create-an-adaptive-form-theme
Figura: Esempio di tema della foresta
-
Crea un nodo di tipo
cq:ClientLibraryFolder
in/apps
nodo.Ad esempio, crea il seguente nodo:
/apps/myAfThemes/forestTheme
-
Aggiungi una proprietà stringa con più valori
categories
sul nodo e impostarne il valore in modo appropriato.Ad esempio, impostare la proprietà su:
af.theme.forest
. -
Aggiungi due cartelle,
less
ecss
e un filecss.txt
al nodo creato nel passaggio 1:-
less
cartella: Contiene laless
file variabili in cui si definiscono iless
variabili eless mixins
utilizzati per gestire gli stili .css.Questa cartella è costituita da
less
file variabili,less
file misti,less
file che definiscono gli stili utilizzando mixin e variabili. E tutti questi file in meno vengono importati in style.less. -
css
cartella: Contiene i file .css in cui si definiscono gli stili statici da utilizzare nel tema.
Meno file variabili: Si tratta dei file , in cui definisci o sovrascrivi le variabili utilizzate nella definizione degli stili CSS.
I moduli adattivi forniscono variabili OOTB definite nei seguenti file .less:
/apps/clientlibs/fd/af/guidetheme/common/less/globalvariables.less
/apps/clientlibs/fd/af/guidetheme/common/less/layoutvariables.less
I moduli adattivi forniscono anche variabili di terze parti definite in:
/apps/clientlibs/fd/af/third-party/less/variables.less
È possibile utilizzare le variabili minori fornite con i moduli adattivi, sovrascrivere queste variabili o creare nuove variabili minori.
note note NOTE Durante l’importazione dei file dei meno preprocessori, nell’istruzione di importazione specificare il percorso relativo dei file. Esempio di variabili di override:
code language-none @button-background-color: rgb(19, 102, 44); @button-border-color: rgb(19, 102, 44); @button-border-size: 0px; @button-padding: 10px 15px; @button-font-color: #ffffff;
Per ignorare il
less
variabili:-
Importa variabili di modulo adattivo predefinite:
/apps/clientlibs/fd/af/guidetheme/common/less/globalvariables.less/apps/clientlibs/fd/af/guidetheme/common/less/layoutvariables.less
-
Quindi importa il file less che include le variabili sostituite.
Esempio di nuove definizioni di variabili:
code language-none @button-focus-bg-color: rgb(40, 208, 90); @button-hover-bg-color: rgb(30, 156, 67);
Meno file mixin: Puoi definire le funzioni che accettano le variabili come argomenti. L'output di queste funzioni sono gli stili risultanti. Utilizza questi mixin all’interno di stili diversi, per evitare di ripetere stili CSS.
I moduli adattivi forniscono mixer OOTB definiti in:
/apps/clientlibs/fd/af/guidetheme/common/less/adaptiveforms-mixins.less
I moduli adattivi forniscono anche mixin di terze parti definiti in:
/apps/clientlibs/fd/af/third-party/less/mixins.less
Definizione del mixin campione:
code language-none .rounded-corners (@radius) { -webkit-border-radius: @radius; -moz-border-radius: @radius; -ms-border-radius: @radius; -o-border-radius: @radius; border-radius: @radius; } .border(@color, @type, @size) { border: @color @size @type; }
File Styles.less: Usa questo file per includere tutti i file minori (variabili, mixin, stili) che devi utilizzare nella libreria client.
Nel seguente esempio:
styles.less
file, l'istruzione import può essere inserita in qualsiasi ordine.Le istruzioni per importare i seguenti file .less sono obbligatorie:
globalvariables.less
layoutvariables.less
components.less
layouts.less
code language-none @import "../../../clientlibs/fd/af/guidetheme/common/less/globalvariables.less"; @import "../../../clientlibs/fd/af/guidetheme/common/less/layoutvariables.less"; @import "forestTheme-variables"; @import "../../../clientlibs/fd/af/guidetheme/common/less/components.less"; @import "../../../clientlibs/fd/af/guidetheme/common/less/layouts.less"; /* custom styles */ .guidetoolbar { input[type="button"], button, .button { .rounded-corners (@button-radius); &:hover { background-color: @button-hover-bg-color; } &:focus { background-color: @button-focus-bg-color; } } } form { background-image: url(../images/forest.png); background-repeat: no-repeat; background-size: 100%; }
La
css.txt
contiene i percorsi dei file .css da scaricare per la libreria.Ad esempio:
code language-none #base=/apps/clientlibs/fd/af/third-party/css bootstrap.css #base=less styles.less #base=/apps/clientlibs/fd/xfaforms/xfalib/css datepicker.css listboxwidget.css scribble.css dialog.css
note note NOTE Il file Styles.less non è obbligatorio. Questo significa che non devi creare questo file, se non hai definito stili, variabili o mixin personalizzati. Tuttavia, se non si crea un file style.less, nel file css.txt, è necessario rimuovere il commento dalla seguente riga: #base=less
E commenta la seguente riga: styles.less
-
Per utilizzare un tema in un modulo adattivo to-use-a-theme-in-an-adaptive-form
Dopo aver creato un tema del modulo adattivo, esegui i seguenti passaggi per utilizzare questo tema in un modulo adattivo:
-
Per includere il tema creato in per creare un tema modulo adattivo sezione, creare una pagina personalizzata di tipo
cq:Component
.Ad esempio
/apps/myAfCustomizations/myAfPages/forestPage
-
Aggiungi un
sling:resourceSuperType
e impostarne il valore comefd/af/components/page/base
. -
Per utilizzare un tema nella pagina, è necessario aggiungere un file di override library.jsp al nodo.
Quindi importi il tema creato in Per creare una sezione del tema del modulo adattivo di questo articolo.
Il frammento di codice di esempio seguente importa il
af.theme.forest
tema.code language-none <%@include file="/libs/fd/af/components/guidesglobal.jsp"%> <cq:includeClientLib categories="af.theme.forest"/>
-
Facoltativo: Nella pagina personalizzata, sovrascrivi header.jsp, footer.jsp e body.jsp, come necessario.
-
-
Crea un modello personalizzato (ad esempio:
/apps/myAfCustomizations/myAfTemplates/forestTemplate
) il cui jcr:content punta alla pagina personalizzata creata nel passaggio precedente (ad esempio:myAfCustomizations/myAfPages/forestPage)
. -
Crea un modulo adattivo utilizzando il modello creato nel passaggio precedente. L’aspetto del modulo adattivo è definito dal tema creato in Per creare un modulo adattivo sezione del tema di questo articolo.