Erstellen von CSS-Stilen für HTML5-Formulare

HTML5-Wiedergabe eines XFA-basierten Formularvorlage besteht aus mehreren HTML-Elementen. Diese Elemente werden in einer Reihenfolge angeordnet. Jedes Element hat klar definierte CSS-Klassen. Sie können die CSS-Klassen verwenden, um das Aussehen eines Elements zu ändern.

HINWEIS

In den CSS-Klassen dürfen die Werte der Attribute für Breite, Höhe, Rahmenstärke, oberen Bereich, linken Bereich, rechten Bereich, unteren Bereich, Abstand und Rand nicht geändert werden. Änderungen an der Position und den Größenattributen ziehen Änderungen am Layout des Formulars nach sich.

CSS-Klassen für Elemente 

Jedes Element enthält klar definierte CSS-Klassen. Die Klassen können geändert werden, um das Aussehen eines Elements zu ändern. Mit Ausnahme des Feld- und Zeichenelements hat jedes Element zwei CSS-Klassen: Type-Klasse und Name-Klasse.

  • Die Typ-Klasse stellt den Typ des XFA-Feldes dar. Sie können die type-Klasse außer Kraft setzen, um den Stil aller Elemente eines bestimmten Typs zu ändern.

  • Die Name-Klasse: entspricht dem Namen des XFA-Feldes. Sie können die name-Klasse überschreiben, um einen benutzerdefinierten zu ändern und auf ein Element anzuwenden.

HINWEIS

Manche XFA-Elemente haben keinen Namen. Um den Stil dieser Komponenten zu ändern, müssen Sie alle Komponenten dieses Typs ändern.

Die Seiten, die in AEM Forms Designer nicht benannt wurden, werden in einem HTML5-Formular in aufsteigenden Reihenfolge ihrer Zahl benannt. Beispiel: Für ein HTML5-Formular mit zwei Seiten werden die Seiten Seite1, Seite2 benannt.

Feldelement

Das Feldelement enthält zwei verschachtelte Elemente: Widget und Beschriftung.

Widget-Element

Das Widget-Element enthält das Element der Benutzeroberfläche für die Interaktion mit dem Benutzer. Es enthält drei CSS-Klassen:

  • Widget: Diese Klasse hat jedes Widget.
  • name: Die „name“-Klasse enthalten alle Widgets von AEM. Für benutzerdefinierte Widgets stellt der Widget-Entwickler die name-Klasse bereit.
  • type: Jedes Widget hat ein Benutzeroberflächenelement. Diese Klasse definiert den Typ des Elements der Benutzeroberfläche.
<!--field with caption-->
<div class="field numericfield NumericField3 ">
     <div class="caption">
        caption content
     </div>
     <div class="widget numericfieldwidget numericInput">
       widget content
     </div>
</div>

<!--field without caption-->
<div class="widget numericfieldwidget numericInput">
   widget content
</div>

Zusätzlich zu der type- und name-Klasse enthält die Feldkomponente noch eine weitere CSS-Klasse: subtype. Eine subtype-Klasse zeigt an, welcher Feldtyp es ist, z. B. NumericField, DateField, TextField. Sie können die subtype-Klasse außer Kraft setzen, um die Stile aller Felder des Typs „subtype“ zu ändern.

CSS-Klassen für verschiedene Komponenten

Komponente Typ Name
Seite page Benutzerdefinierter Name
oder
Seite<Seitenzahl> (Standard)
Inhaltsbereich contentarea Benutzerdefinierter Name
Teilformular subform Benutzerdefinierter Name
Ausschlussgruppe exclgroup Benutzerdefinierter Name
Draw draw Benutzerdefinierter Name
Feld field Benutzerdefinierter Name
Beschriftung caption nicht vorhanden
Widget Widget Vom Widget-Entwickler definiert (Informationen zu benutzerdefinierten Widgets finden Sie im folgenden Abschnitt)

CSS-Klassen für verschiedene Felder

Der AEM Forms Designer unterstützt unterschiedliche Typen von Feldern in einem Formular wie NumericField, DecimalField und DateField. All diese Felder enthalten in HTML die oben genannten CSS-Klassen. Je nach Typ des Feldes enthalten sie auch ein paar zusätzliche Klassen.

Jedes Feld verfügt über ein zugehöriges Widget, das das Benutzeroberflächen-Element darstellt. Die Klassen jedes Feldes und die mit den Feldern verknüpfte Widgets sind unten aufgeführt.

Feldtyp Untertyp Widget-Name Widget-Typ HTML-Benutzeroberflächen-Tag
Schaltfläche
nicht vorhanden xfaButton
buttonfieldwidget
input type=button
CheckButton
checkboxfield
XfaCheckBox
checkboxfieldwidget
input type=checkbox
DateField
datefield
dateField
datefieldwidget
inputtype = text
DateTimeField
textfield
textField
textfieldwidget inputtype = text
DecimalField
numericfield
numericInput
numericfieldwidget
inputtype = text
DropDown
choicelist
dropDownListWidget
choicelistwidget
auswählen
ListBox
choicelist
listBoxWidget
choicelistwidget
ol
NumericField
numericfield
numericInput
numericfieldwidget
inputtype = text
PasswordField
passwordfield
defaultWidget
passwordfieldwidget
input type=password
RadioButton
radiofield
XfaCheckBox
radiofieldwidget
input type=radio
TextField
textfield
textField
textfieldwidget
inputtype = text
TimeField
textfield
textField
textfieldwidget
inputtype = text

CSS-Klassen für verschiedene Zeichenelemente

Mithilfe des AEM Forms Designer können Sie statische Zeichenelemente wie Text und Bilder einfügen. Jedes Zeichenelement ist mit einer separaten CSS-Klasse verknüpft. Die Liste der CSS-Klassen für Zeichenelemente ist unten aufgeführt. Jedes Zeichnenelement ist mit einer draw-Klasse verknüpft.

Zeichentyp CSS-Klasse
Text text
Bild image
Rechteck rectangle
Linie Zeile

Gestalten des Stils anderer Formularteile

Neben dem Aussehen der Benutzerflächen-Komponenten im HTML-Formular können Sie auch den Stil von Elementen wie Inline-Fehler, Inline-Warnungen und Felder mit Überprüfungsfehlern ändern.

Styling Inline Errors

Wenn die Überprüfung eines Feldes einen Fehler ergibt, wird ein Inline-Fehler angezeigt, wenn das Feld aktiv ist. Um den Stil von Inline-Fehlern zu ändern, muss die CSS-ID error-msg außer Kraft gesetzt werden.

Styling Inline Warnings

Wenn die Überprüfung eines Feldes eine Warnung ergibt, wird eine Inline-Warnung angezeigt, wenn das Feld aktiv ist. Um den Stil von Inline-Warnungen zu ändern, muss die CSS-ID warning-msg außer Kraft gesetzt werden.

Styling Fields with Validation Errors

Wenn die Überprüfung eines Feldes fehlschlägt, wird der Stil des Widgets geändert. Diese Änderung des Stils wird ausgeführt, indem die CSS-Klasse widgetError auf die Widget-Komponente angewendet wird. Um den Standardstil zu ändern, muss die Klasse widgetError außer Kraft gesetzt werden.

Auf dieser Seite