Pattern-Anwendung
Beim Design der wien.gv.at Pattern-Library haben wir stark auf die Prinzipien "Content-First" und "Progressive-Enhancement" gesetzt. JavaScript ist, bis auf wenige Ausnahmen, keine Voraussetzung für die Darstellung von Inhalten. Es dient lediglich zur Erweiterung der Kernfunktionalität.
Das lässt sich sehr gut anhand des Patterns "Anker" zeigen: Die Basis ist eine einfache Überschrift.
<h2>Trinkbrunnen</h2>
Um die Funktionalität der Überschrift zu erweitern, können Sie sie in dem
wm-anchor
-Element schachteln. Dafür muss die passende JavaScript-Datei eingebunden werden.
<script src="./wienermelange/assets/js/components/Anchor/Anchor.js" type="module"></script>
<wm-anchor>
<h2>Trinkbrunnen</h2>
</wm-anchor>
Dabei passieren 2 grundlegende Dinge:
- Aus dem Text der Überschrift wird eine maschinenlesbare ID erzeugt und als
id
-Attribut an das Element gehängt. - In das Shadow-DOM des Elements wird ein Link hinzugefügt, der zu dem Anker führt und bei Click automatisch die URL kopiert.
Der im Browser interpretierte Code sieht dann so aus:
<wm-anchor id="trinkbrunnen">
#shadow-root
|
<slot></slot>
|
<a href="#trinkbrunnen" aria-label="Link zur Überschrift " Trinkbrunnen" kopieren">
|
<wm-icon iconid="link"></wm-icon>
|
</a>
<h2>Trinkbrunnen</h2>
</wm-anchor>
Sollte JavaScript deaktiviert sein oder aus einem sonstigen Grund nicht funktionieren, wird trotzdem immer noch die Überschrift angezeigt.
Pattern-Dokumentation
Jedes Pattern kommt mit einer eigenen Seite, auf der es in den meisten Fällen eine Beschreibung, Anwendungsbeispiele mit Vorschau und Code-Ansicht und Spezifikation gibt. Diese sind in folgende Reiter aufgeteilt (Beispiel "Akkordeon" ):
Reiter "Varianten"
Der Varianten-Tab zeigt gängige Variationen und Best Practices des Patterns. Er bietet eine Code-Ansicht, die die Implementierung der jeweiligen Variante verdeutlicht. Zusätzlich können Sie hier verschiedene Kombinationen und Einsatzmöglichkeiten der Patterns sehen.
Beispiel Akkordeon:
Ein bestimmtes Element ist geöffnet
Einzelförderung
- Einreichtermine:
- 1. bis 30. April: für Vorhaben mit Beginn zwischen Juli und Dezember des laufenden Jahres
- 1. bis 31. Oktober: für Vorhaben im Folgejahr
- Richtlinien: Bildende Kunst und Medienkunst - Förderrichtlinien
- Antrag: Einzel- und Gesamtförderung im Bereich Bildende Kunst und Medienkunst - Antrag
Gesamtförderung
- Einreichtermine:
- 1. bis 31. Oktober: für Vorhaben im Folgejahr
- Richtlinien: Bildende Kunst und Medienkunst - Förderrichtlinien
- Antrag: Einzel- und Gesamtförderung im Bereich Bildende Kunst und Medienkunst - Antrag
Kunstankauf
- Einreichtermine: 1. bis 31. Jänner
- Richtlinien: Kunstankauf - Richtlinien
- Antrag: Ankauf von Kunstwerken - Förderantrag
Arbeitsstipendium
- Einreichtermine: 1. bis 30. Juni
- Richtlinien: Arbeitsstipendium Bildende Kunst und Medienkunst - Richtlinien
- Antrag: Arbeitsstipendium Bildende Kunst und Medienkunst - Förderantrag
Start-Atelier
- Einreichtermine: Derzeit sind keine Einreichungen möglich.
- Richtlinien: Bewerbung um ein START-Atelier - Richtlinien
- Antrag: Bewerbung um ein START-Atelier - Förderantrag
- Abrechnung: Keine Abrechnung erforderlich
<wm-accordion open="2">
<wm-accordion-heading>
<h3>Einzelförderung</h3>
</wm-accordion-heading>
<wm-accordion-content>
<wm-list gap="xxs">
<ul>
<li>Einreichtermine:
<ul>
<li>1. bis 30. April: für Vorhaben mit Beginn zwischen Juli und Dezember des laufenden Jahres</li>
<li>1. bis 31. Oktober: für Vorhaben im Folgejahr</li>
</ul>
</li>
<li>Richtlinien:
<a href="#">Bildende Kunst und Medienkunst - Förderrichtlinien</a>
</li>
<li>Antrag:
<a href="#">Einzel- und Gesamtförderung im Bereich Bildende Kunst und Medienkunst - Antrag</a>
</li>
</ul>
</wm-list>
</wm-accordion-content>
<wm-accordion-heading>
<h3>Gesamtförderung</h3>
</wm-accordion-heading>
<wm-accordion-content>
<wm-list gap="xxs">
<ul>
<li>Einreichtermine:
<ul>
<li>1. bis 31. Oktober: für Vorhaben im Folgejahr</li>
</ul>
</li>
<li>Richtlinien:
<a href="#">Bildende Kunst und Medienkunst - Förderrichtlinien</a>
</li>
<li>Antrag:
<a href="#">Einzel- und Gesamtförderung im Bereich Bildende Kunst und Medienkunst - Antrag</a>
</li>
</ul>
</wm-list>
</wm-accordion-content>
<wm-accordion-heading>
<h3>Kunstankauf</h3>
</wm-accordion-heading>
<wm-accordion-content>
<wm-list gap="xxs">
<ul>
<li>Einreichtermine: 1. bis 31. Jänner</li>
<li>Richtlinien:
<a href="#">Kunstankauf - Richtlinien</a>
</li>
<li>Antrag:
<a href="#">Ankauf von Kunstwerken - Förderantrag</a>
</li>
</ul>
</wm-list>
</wm-accordion-content>
<wm-accordion-heading>
<h3>Arbeitsstipendium</h3>
</wm-accordion-heading>
<wm-accordion-content>
<wm-list gap="xxs">
<ul>
<li>Einreichtermine: 1. bis 30. Juni</li>
<li>Richtlinien:
<a href="#">Arbeitsstipendium Bildende Kunst und Medienkunst - Richtlinien</a>
</li>
<li>Antrag:
<a href="#">Arbeitsstipendium Bildende Kunst und Medienkunst - Förderantrag</a>
</li>
</ul>
</wm-list>
</wm-accordion-content>
<wm-accordion-heading>
<h3>Start-Atelier</h3>
</wm-accordion-heading>
<wm-accordion-content>
<wm-list gap="xxs">
<ul>
<li>Einreichtermine: Derzeit sind keine Einreichungen möglich.</li>
<li>Richtlinien:
<a href="#">Bewerbung um ein START-Atelier - Richtlinien</a>
</li>
<li>Antrag:
<a href="#">Bewerbung um ein START-Atelier - Förderantrag</a>
</li>
<li>Abrechnung: Keine Abrechnung erforderlich</li>
</ul>
</wm-list>
</wm-accordion-content>
</wm-accordion>
Reiter "Dev"
Der Dev-Reiter bietet zusätzliche Beispiele, die besonders für Entwickler*innen relevant sind. Hier werden Anwendungen von Attributen, Kombinationen mit anderen Patterns sowie der Einsatz von Events und Methoden demonstriert.
Viele Patterns bieten innerhalb dieses Reiters eine interaktive Demo, in der Sie die wichtigsten Attribute ausprobieren und deren Auswirkungen direkt sehen können.
Beispiel Akkordeon:
Events
Einzelförderung
- Einreichtermine:
- 1. bis 30. April: für Vorhaben mit Beginn zwischen Juli und Dezember des laufenden Jahres
- 1. bis 31. Oktober: für Vorhaben im Folgejahr
- Richtlinien: Bildende Kunst und Medienkunst - Förderrichtlinien
- Antrag: Einzel- und Gesamtförderung im Bereich Bildende Kunst und Medienkunst - Antrag
Gesamtförderung
- Einreichtermine:
- 1. bis 31. Oktober: für Vorhaben im Folgejahr
- Richtlinien: Bildende Kunst und Medienkunst - Förderrichtlinien
- Antrag: Einzel- und Gesamtförderung im Bereich Bildende Kunst und Medienkunst - Antrag
Kunstankauf
- Einreichtermine: 1. bis 31. Jänner
- Richtlinien: Kunstankauf - Richtlinien
- Antrag: Ankauf von Kunstwerken - Förderantrag
Arbeitsstipendium
- Einreichtermine: 1. bis 30. Juni
- Richtlinien: Arbeitsstipendium Bildende Kunst und Medienkunst - Richtlinien
- Antrag: Arbeitsstipendium Bildende Kunst und Medienkunst - Förderantrag
Start-Atelier
- Einreichtermine: Derzeit sind keine Einreichungen möglich.
- Richtlinien: Bewerbung um ein START-Atelier - Richtlinien
- Antrag: Bewerbung um ein START-Atelier - Förderantrag
- Abrechnung: Keine Abrechnung erforderlich
<wm-accordion class="events">
<wm-accordion-heading>
<h3>Einzelförderung</h3>
</wm-accordion-heading>
<wm-accordion-content>
<wm-list gap="xxs">
<ul>
<li>Einreichtermine:
<ul>
<li>1. bis 30. April: für Vorhaben mit Beginn zwischen Juli und Dezember des laufenden Jahres</li>
<li>1. bis 31. Oktober: für Vorhaben im Folgejahr</li>
</ul>
</li>
<li>Richtlinien:
<a href="#">Bildende Kunst und Medienkunst - Förderrichtlinien</a>
</li>
<li>Antrag:
<a href="#">Einzel- und Gesamtförderung im Bereich Bildende Kunst und Medienkunst - Antrag</a>
</li>
</ul>
</wm-list>
</wm-accordion-content>
<wm-accordion-heading>
<h3>Gesamtförderung</h3>
</wm-accordion-heading>
<wm-accordion-content>
<wm-list gap="xxs">
<ul>
<li>Einreichtermine:
<ul>
<li>1. bis 31. Oktober: für Vorhaben im Folgejahr</li>
</ul>
</li>
<li>Richtlinien:
<a href="#">Bildende Kunst und Medienkunst - Förderrichtlinien</a>
</li>
<li>Antrag:
<a href="#">Einzel- und Gesamtförderung im Bereich Bildende Kunst und Medienkunst - Antrag</a>
</li>
</ul>
</wm-list>
</wm-accordion-content>
<wm-accordion-heading>
<h3>Kunstankauf</h3>
</wm-accordion-heading>
<wm-accordion-content>
<wm-list gap="xxs">
<ul>
<li>Einreichtermine: 1. bis 31. Jänner</li>
<li>Richtlinien:
<a href="#">Kunstankauf - Richtlinien</a>
</li>
<li>Antrag:
<a href="#">Ankauf von Kunstwerken - Förderantrag</a>
</li>
</ul>
</wm-list>
</wm-accordion-content>
<wm-accordion-heading>
<h3>Arbeitsstipendium</h3>
</wm-accordion-heading>
<wm-accordion-content>
<wm-list gap="xxs">
<ul>
<li>Einreichtermine: 1. bis 30. Juni</li>
<li>Richtlinien:
<a href="#">Arbeitsstipendium Bildende Kunst und Medienkunst - Richtlinien</a>
</li>
<li>Antrag:
<a href="#">Arbeitsstipendium Bildende Kunst und Medienkunst - Förderantrag</a>
</li>
</ul>
</wm-list>
</wm-accordion-content>
<wm-accordion-heading>
<h3>Start-Atelier</h3>
</wm-accordion-heading>
<wm-accordion-content>
<wm-list gap="xxs">
<ul>
<li>Einreichtermine: Derzeit sind keine Einreichungen möglich.</li>
<li>Richtlinien:
<a href="#">Bewerbung um ein START-Atelier - Richtlinien</a>
</li>
<li>Antrag:
<a href="#">Bewerbung um ein START-Atelier - Förderantrag</a>
</li>
<li>Abrechnung: Keine Abrechnung erforderlich</li>
</ul>
</wm-list>
</wm-accordion-content>
</wm-accordion>
<div class="events-output" role="status"></div>
<script>
const events = document.querySelector(".events");
const output = document.querySelector(".events-output");
events.addEventListener("wm-collapsed", (e) => {
output.innerText = `Event: ${
e.type
} ID: ${
e.detail.id
} Index: ${
e.detail.index
}`;
});
events.addEventListener("wm-expanded", (e) => {
output.innerText = `Event: ${
e.type
} ID: ${
e.detail.id
} Index: ${
e.detail.index
}`;
});
</script>
Reiter "API"
Je nach Komplexität des Patterns verfügt es über mehr oder weniger Möglichkeiten, angepasst zu werden. Im Reiter "API" sind diese dokumentiert und wie folgt aufgeteilt:
Eigenschaften
Hier werden alle Attribute inklusive Kurzbeschreibung, Typ und Default-Wert der Web-Component aufgelistet.
Beispiel Akkordeon:
Eigenschaft | Beschreibung | Werte | Default |
---|---|---|---|
open
|
Nummer des zu öffnenden Panels angeben, beginnend bei eins (1). Es kann nur ein Wert übergeben werden. |
Number
|
leer |
single
|
Attribut angeben, damit immer nur ein Panel gleichzeitig geöffnet wird (übertrumpft expanded). |
Boolean
|
false
|
expanded
|
Alle geöffnet anzeigen. |
Boolean
|
false
|
Die Eigenschaft
open
erwartet einen numerischen Wert und die Eigenschaft
single
gar keinen, weil es ein boolsches Attribut ist.
<wm-accordion single open="1">
…
</wm-accordion>
Slots
Mehr Infos Für das Pattern "Akkordeon" gibt es einen Slot, mit dem Inhalte übergeben werden.
Beispiel Akkordeon:
Name | Beschreibung |
---|---|
default
|
Nimmt Paare von wm-accordion-heading und wm-accordion-content Elementen auf |
<wm-accordion single open="1">
<wm-accordion-heading>
<h3>
Ist eine Mitgliedschaft beim Vorteilsclub der Stadt Wien mit Kosten verbunden?
</h3>
</wm-accordion-heading>
<wm-accordion-content>
<p>Nein. Die Mitgliedschaft im Vorteilsclub der Stadt Wien ist absolut kostenlos und ohne Bindung.</p>
</wm-accordion-content>
</wm-accordion>
Ein Pattern kann auch über mehrere benannte Slots verfügen. Beispiel
wm-card
:
<wm-card size="m" blocklink>
<h3 slot="heading">
Überschrift
</h3>
<div slot="precontent">
<wm-chip color="flieder" size="s">Kategorie</wm-chip>
</div>
<img slot="media" src="/images/pattern/modal/modal1.jpg" alt=""/>
<div slot="content">
<p>
Beispiel: Card mit mehreren benannten Slots
</p>
</div>
<div slot="postcontent" class="wm-u-tar">
<wm-cta>
<a href="#">Link</a>
</wm-cta>
</div>
</wm-card>
Überschrift

Beispiel: Card mit mehreren benannten Slots
Methoden
Unter Methoden sind alle öffentlichen JavaScript-Methoden für das Pattern dokumentiert.
Die
expand
-Methode öffnet ein Panel. Sie nimmt einen Wert, der entweder ein Index, eine ID oder ein DOM-Element ist.
Beispiel Akkordeon:
Eigenschaft | Optionen | Argumente |
---|---|---|
_expandContent
|
Akkordeon wurde geöffnet | |
_collapseContent
|
Akkordeon wurde geschlossen | |
expand
|
Panel öffnen |
index
(number ) |
collapse
|
Panel schließen |
index
(number ) |
<button class="expandButtonNameId">Zweites Element öffnen</button>
<button class="collapseButtonNameId">Zweites Element schließen</button>
<wm-accordion id="accodionNameId">
<wm-accordion-heading>
<h3>
Wer kann Mitglied im Vorteilsclub der Stadt Wien werden?
</h3>
</wm-accordion-heading>
<wm-accordion-content>
<p>Jede natürliche Person mit Wohnsitz in Österreich, die das 16. Lebensjahr vollendet hat.</p>
</wm-accordion-content>
<wm-accordion-heading>
<h3>
Wie erhalte ich meine Vorteilsclub der Stadt Wien-Karte?
</h3>
</wm-accordion-heading>
<wm-accordion-content>
<p>Einfach Profil vervollständigen. Sobald wir alle nötigen Informationen erhalten haben, wird deine digitale und
personalisierte Vorteilsclub der Stadt Wien-Karte in deinem Profil angezeigt. Die digitale Mitgliedskarte ist sofort
einsatzbereit.</p>
</wm-accordion-content>
<wm-accordion-heading>
<h3>
Was passiert mit meinen Daten?
</h3>
</wm-accordion-heading>
<wm-accordion-content>
<p>Um die Angebote des Vorteilsclubs der Stadt Wien rundum nutzen zu können, benötigen wir ein paar aktuelle
Informationen zu deiner Person. Der Schutz deiner persönlichen Daten hat für uns dabei oberste Priorität! Detaillierte
Informationen zum Thema Datenschutz findest du hier.</p>
<p>Sollten sich deine Daten ändern, etwa durch einen Umzug, kannst du diese jederzeit selbst in deinem Profil anpassen.</p>
</wm-accordion-content>
</wm-accordion>
<script>
const accodionNameId = document.querySelector('.accodionNameId');
const expandButtonNameId = document.querySelector('.expandButtonNameId');
const collapseButtonNameId = document.querySelector('.collapseButtonNameId');
expandButtonNameId.addEventListener("click", (e) => {
accodionNameId.expand(2)
});
collapseButtonNameId.addEventListener("click", (e) => {
accodionNameId.collapse(2)
});
</script>
Wer kann Mitglied im Vorteilsclub der Stadt Wien werden?
Jede natürliche Person mit Wohnsitz in Österreich, die das 16. Lebensjahr vollendet hat.
Wie erhalte ich meine Vorteilsclub der Stadt Wien-Karte?
Einfach Profil vervollständigen. Sobald wir alle nötigen Informationen erhalten haben, wird deine digitale und personalisierte Vorteilsclub der Stadt Wien-Karte in deinem Profil angezeigt. Die digitale Mitgliedskarte ist sofort einsatzbereit.
Was passiert mit meinen Daten?
Um die Angebote des Vorteilsclubs der Stadt Wien rundum nutzen zu können, benötigen wir ein paar aktuelle Informationen zu deiner Person. Der Schutz deiner persönlichen Daten hat für uns dabei oberste Priorität! Detaillierte Informationen zum Thema Datenschutz findest du hier.
Sollten sich deine Daten ändern, etwa durch einen Umzug, kannst du diese jederzeit selbst in deinem Profil anpassen.
Events
Manche Patterns verfügen auch über Events, die Sie über Event Listener ansprechen können.
Beispiel Akkordeon:
Event | Beschreibung | Rückgabewert |
---|---|---|
wm-defined
|
Web Component ist bereit |
|
<button class="expandButtonNameId">2. Element öffnen</button>
<button class="collapseButtonNameId">2. Element schließen</button>
<wm-accordion class="wm-accordion-NameId">
…
</wm-accordion>
<script>
const accordionNameId = document.querySelector('wm-accordion-NameId');
const expandNameId = document.querySelector('.expandButtonNameId');
const collapseNameId = document.querySelector('.collapseButtonNameId');
expandNameId.addEventListener("click", (e) => {
accordionNameId.expand(2)
});
collapseNameId.addEventListener("click", (e) => {
accordionNameId.collapse(2)
});
accordionNameId.addEventListener("wm-collapsed", (e) => {
console.log(`Event: ${
e.type
} ID: ${
e.detail.id
} Index: ${
e.detail.index
}`);
});
accordionNameId.addEventListener("wm-expanded", (e) => {
console.log(`Event: ${
e.type
} ID: ${
e.detail.id
} Index: ${
e.detail.index
}`);
});
</script>
Wer kann Mitglied im Vorteilsclub der Stadt Wien werden?
Jede natürliche Person mit Wohnsitz in Österreich, die das 16. Lebensjahr vollendet hat.
Wie erhalte ich meine Vorteilsclub der Stadt Wien-Karte?
Einfach Profil vervollständigen. Sobald wir alle nötigen Informationen erhalten haben, wird deine digitale und personalisierte Vorteilsclub der Stadt Wien-Karte in deinem Profil angezeigt. Die digitale Mitgliedskarte ist sofort einsatzbereit.
Was passiert mit meinen Daten?
Um die Angebote des Vorteilsclubs der Stadt Wien rundum nutzen zu können, benötigen wir ein paar aktuelle Informationen zu deiner Person. Der Schutz deiner persönlichen Daten hat für uns dabei oberste Priorität! Detaillierte Informationen zum Thema Datenschutz findest du hier.
Sollten sich deine Daten ändern, etwa durch einen Umzug, kannst du diese jederzeit selbst in deinem Profil anpassen.
CSS API
Das Styling der meisten Pattern kann über CSS-Custom-Properties angepasst werden. Dies darf jedoch nur in Ausnahmefällen und in Abstimmung mit dem Handbuch-Team passieren. Ansonsten gelten die Vorgaben und Varianten der Pattern Library. Weitere Informationen finden Sie im nächsten Abschnitt "Individuelle Anpassungen".
Beispiel Akkordeon:
Property | Beschreibung |
---|---|
--accordion-background-color
|
Hintergrundfarbe des Buttons |
--accordion-background-color--hover
|
Hintergrundfarbe des Buttons Hover & Focus |
--accordion-panel-background-color
|
Hintergrundfarbe des Panels |
--accordion-panel-font-color
|
Schriftfarbe im Panel |
--accordion-border
|
Rahmen um den Button |
--accordion-font-color
|
Schriftfarbe des Buttons |
--accordion-font-color--hover
|
Schriftfarbe des Buttons Hover & Focus |
--accordion-contrast
|
Kontrast-Hintergrundfarbe, zum Beispiel für Multimedia-Elemente |
--accordion-font-weight
|
Schriftstärke im Button |
--accordion-padding-inline
|
Innenabstand links und rechts |
--accordion-padding-block-start
|
Innenabstand oben |
--accordion-padding-block-end
|
Innenabstand unten |
--accordion-gap
|
Abstand zwischen Panels |
wm-accordion {
--accordion-background-color: var(--wm-color-wasserblau-light);
--accordion-background-color--hover: var(--wm-color-wasserblau);
--accordion-panel-background-color: var(--wm-color-wasserblau-light);
--accordion-gap: var(--wm-spacing-l);
}
Wer kann Mitglied im Vorteilsclub der Stadt Wien werden?
Jede natürliche Person mit Wohnsitz in Österreich, die das 16. Lebensjahr vollendet hat.
Wie erhalte ich meine Vorteilsclub der Stadt Wien-Karte?
Einfach Profil vervollständigen. Sobald wir alle nötigen Informationen erhalten haben, wird deine digitale und personalisierte Vorteilsclub der Stadt Wien-Karte in deinem Profil angezeigt. Die digitale Mitgliedskarte ist sofort einsatzbereit.
Was passiert mit meinen Daten?
Um die Angebote des Vorteilsclubs der Stadt Wien rundum nutzen zu können, benötigen wir ein paar aktuelle Informationen zu deiner Person. Der Schutz deiner persönlichen Daten hat für uns dabei oberste Priorität! Detaillierte Informationen zum Thema Datenschutz findest du hier.
Sollten sich deine Daten ändern, etwa durch einen Umzug, kannst du diese jederzeit selbst in deinem Profil anpassen.
Individuelle Anpassungen
CD-konforme Designs und das Wiener-Melange-Theme sind für alle wien.gv.at-Seiten und Anwendungen verbindlich. Anpassungen – sei es bei Farben, Komponenten oder anderen Designaspekten – dürfen nur in Ausnahmefällen erfolgen, etwa für spezielle Anwendungen (zum Beispiel Debugging-Tools oder White-Label-Lösungen), die zusätzliche Anpassungen benötigen.
Wer eigene Anpassungen vornimmt, trägt die Verantwortung dafür, dass sie barrierefrei, funktional und sinnvoll gestaltet sind.
Individuelle Änderungen dürfen nicht vorgenommen werden, nur weil das standardisierte Design nicht gefällt.
Wenn Sie weitere Farbvariationen benötigen und mit dem Wiener-Melange-Theme arbeiten, wenden Sie sich bitte an handbuch@ma53.wien.gv.at.
Abhängigkeiten
Wenn es Abhängigkeiten zu anderen Patterns gibt, werden diese hier aufgelistet.
Beispiel Akkordeon:
<script src="https://assets.wien.gv.at/theme/latest/js/components/Accordion/Accordion.js" type="module"></script>
import { Accordion } from './wienermelange/assets/js/components/Accordion/Accordion.js';
Reiter "Changelog"
Im Changelog werden für das jeweilige Pattern Versionsnummern und Änderungen dokumentiert.
Kontakt
Haben Sie noch Fragen, Feedback oder brauchen Sie ein Element, das die Pattern Library noch nicht
bietet?
handbuch@ma53.wien.gv.at