CSS

In diesem Abschnitt werden die CSS Elemente des Frameworks erklärt. Die wichtigsten Layout Komponenten sind Container sowie das Grid System. Des weiteren werden auch Tabellen und einige Klassen zur Farbauswahl erläutert.



Grid System

Gestalte komplexe Layouts mithilfe eines 12 Spalten Grid Systems. Eine Webseite kann gedanklich in eine Art Tabelle mit mehreren Spalten und Zeilen unterteilt werden. Ist die Tabelle zum Beispiel 12 Spalten breit und 1 Zeile hoch so sind über 450.000.000 Möglichkeiten der Positionierung möglich. Durch das Implementieren weiterer Klassen sind noch einmal mehr Optionen offen.

Container

Container umschließen mehrere DOM Elemente und definieren deren maximale Breite. Im Optimalfall sollten die Containerklassen in semantische Elemente eingebunden werden, also zum Beispiel im <main> </main> oder <section> </section> Tag.

Sehr Klein Klein Mittel Groß Sehr Groß Elastisch
Breite 60% 80% 90% 95% 100% 100%
Klassenname .container-xs .container-s .container-m .container-l .container-xl .container-elastic
.container-xs
.container-s
.container-m
.container-l
.container-xl
<div class="container-xs">.container-xs</div>
<div class="container-s">.container-s</div>
<div class="container-m">.container-m</div>
<div class="container-l">.container-l</div>
<div class="container-xl">.container-xl</div>

Gleiche Spaltengröße

Nachdem die Größen der Container bestimmt wurden, wird eine .row Klasse eingerichtet. Jeder <div> Tag mit der Klasse .row repräsentiert eine Zeile in unserer gedanklichen Tabelle. Innerhalb der Row können bis zu 12 .col Klassen eingebunden werden. Diese teilen sich den freien Platz untereinander auf.

Erste von zwei Spalten
Zweite von zwei Spalten
Erste von drei Spalten
Zweite von drei Spalten
Dritte von drei Spalten
<div class="row">
    <div class="col">Erste von zwei Spalten</div>
    <div class="col">Zweite von zwei Spalten</div>
</div>
<div class="row center">
    <div class="col">Erste von drei Spalten</div>
    <div class="col">Zweite von drei Spalten</div>
    <div class="col">Dritte von drei Spalten</div>
</div>

Spaltengröße setzen

Alternativ können einzelne oder alle Elemente mit einer bestimmten Größe versehen werden. Je nach Vorsilbe werden andere Bildschirmgrößen angesprochen. Sollen Elemente auf jeder Bildschirmgrößen gleich groß sein, so reicht es .xs zu definieren.

Sehr Klein (< 400px) Klein (< 600px) Mittel (< 950px) Groß (< 1240px) Sehr Groß (> 1240px)
Klassenname .xs .s .m .l .xl
Spaltenanzahl 12 (Konfigurierbar)
Verschachtelbar Ja
Spalten sortieren Ja
1 von 3
.xs6 (wider)
3 von 3
1 von 3
.xs9 (wider)
3 von 3
.col .xs7
2 von 3
3 von 3
<div class="row">
    <div class="col">1 von 3</div>
    <div class="col xs6">.xs6 (wider)</div>
    <div class="col">3 von 3</div>
</div>
<div class="row">
    <div class="col">1 von 3</div>
    <div class="col xs9">.xs9 (wider)</div>
    <div class="col">3 von 3</div>
</div>
<div class="row">
    <div class="col xs7">.col .xs7</div>
    <div class="col">2 von 3</div>
    <div class="col">3 von 3</div>
</div>

Verschachtelung

Ebenfalls möglich ist es, mehrere Tabellen ineinander zu verschachteln - so entstehen noch mehr Möglichkeiten ein Layout zu gestalten. Alle zuvor erwähnten Attribute sind weiterhin anwendbar.

Level 1 .col
Level 1 .col
Level 2 .col
Level 3 .col
Level 3 .col
Level 2 .col
Level 1 .col
<div class="row">
    <div class="col">Level 1 .col</div>
    <div class="col">Level 1 .col
        <div class="row">
            <div class="col">Level 2 .col
                <div class="row">
                    <div class="col">Level 3 .col</div>
                    <div class="col">Level 3 .col</div>
                </div>
            </div>
            <div class="col">Level 2 .col</div>
        </div>
    </div>
    <div class="col">Level 1 .col</div>
</div>

Horizontale Zentrierung

Füllen die angegebenen Spalten in einer Tabelle nicht die maximale Breite des Bildschirms aus, so können diese nach belieben positioniert werden. Standardmäßig werden Elemente und Texte Rechtsbündig zentriert.

.row in .container-m | .center
.row in .container-m | .start
.row in .container-m | .end
<div class="row start">
    <div class="col"> .row in .container-m | .start</div>
</div>
<div class="row center">
    <div class="col xs3"> .row in .container-m | .center</div>
</div>
<div class="row end">
    <div class="col"> .row in .container-m | .end</div>
</div>

Vertikale Zentrierung

Im Falle, dass ein Container höher als die eingeschlossenen Elemente, können die Kindelemente entweder Oben, Unten oder in der Mitte positioniert werden.

.row in .container-m | .top
.row in .container-m | .middle
.row in .container-m | .bottom
<div class="row top">
	<div class="col blue-medium"> .row in .container-m | .top</div>
</div>
<div class="row row-cust-height middle">
	<div class="col blue-medium"> .row in .container-m | .middle</div>
</div>
<div class="row row-cust-height bottom">
	<div class="col blue-medium"> .row in .container-m | .bottom</div>
</div>

Erweiterte Positionierung

Auch im Nachhinein ist es noch möglich die Position einiger Elemente zu ändern. Zum Beispiel können die Spalten geordnet oder eingerückt werden.

Spalten einrücken

Um keine leeren Spalten definieren zu müssen, können einzelne Elemente weiter nach rechts gedrückt werden. Die Logik ist deckend zu der des Grid Systems und somit einfach verknüpfbar.

.col .push-xs2
.col .push-xs4
.col .push-xs6
.col .push-xs8
.col .push-xs10
.col .push-xs11
<div class="row">
    <div class="col push-xs2"> .col .push-xs2</div>
</div>
<div class="row">
    <div class="col push-xs4"> .col .push-xs4</div>
</div>
<div class="row">
    <div class="col push-xs6"> .col .push-xs6</div>
</div>
<div class="row">
    <div class="col push-xs8"> .col .push-xs8</div>
</div>
<div class="row">
    <div class="col push-xs10"> .col .push-xs10</div>
</div>
<div class="row">
    <div class="col push-xs11"> .col .push-xs11</div>
</div>

Ordnen der Spalten

Sind nun zum Beispiel 6 Column Elemente definiert und das letzte Element im Sourcecode soll ganz nach vorne gebracht werden, so kann die Klasse first verwendet werden. Um das Gegenteil dazu zu erreichen wird die Klasse last verwendet. Weiteres kann über die Klassen .order1 - .order12 die komplette Ordnung verändert werden.

DOM Element 1 .last
DOM Element 2 .first
DOM Element 1
DOM Element 2 | .last
DOM Element 3 | .first
DOM Element 1 | .first
DOM Element 2
DOM Element 3 | .first
<div class="row center">
    <div class="col"> DOM Element 1 </div>
    <div class="col"> DOM Element 2 </div>
    <div class="col first"> DOM Element 3 | .first</div>
</div>

Mit Sass personalisieren

Falls Vorkenntnisse über Precompiler und im Speziellen über die Sprachen SASS und SCSS vorhanden ist, können die Werte vordefinierte Variablen geändert und das Stylesheet personalisiert werden. Zum Beispiel kann die Anzahl der Spalten von 12 auf 24 geändert werden.

Variablen

Des Weiteren könnten die Breakpoints oder der Seitenrand verändert werden.

Variablenname Werte
Spaltenanzahl Grid $anzColumn Nummer (0-24 Empfohlen)
Grid Breakpoints $small-min Nummer (0-∞)
Grid Breakpoints $medium-min Nummer (0-∞)
Grid Breakpoints $large-min Nummer (0-∞)
Grid Breakpoints $xxlarge-min Nummer (0-∞)
Automatischer Margine $margin-auto Prozentanzahl (0-100)

Farb System

Das Framework bietet eine kleine Selektion an vordefinierten Farbräumen. Neben den Grundfarben bieten wir einen Erweiterten Farbraum und vordefinierte Themen, wie zum Beispiel eines für Farben des Herbstes.

<div class="orange-medium"></div>
<p class="text-orange-medium"></p>

Farbrad

Hier werden alle Farbrad Farben mit 12 verschiedenen Tans als Klassennamen aufbereitet.

.red-lighten6
.red-lighten5
.red-lighten4
.red-lighten3
.red-lighten2
.red-lighten1
.red-medium
.red-darken1
.red-darken2
.red-darken3
.red-darken4
.red-darken5
.red-darken6
.orange-lighten6
.orange-lighten5
.orange-lighten4
.orange-lighten3
.orange-lighten2
.orange-lighten1
.orange-medium
.orange-darken1
.orange-darken2
.orange-darken3
.orange-darken4
.orange-darken5
.orange-darken6
.yellow-lighten6
.yellow-lighten5
.yellow-lighten4
.yellow-lighten3
.yellow-lighten2
.yellow-lighten1
.yellow-medium
.yellow-darken1
.yellow-darken2
.yellow-darken3
.yellow-darken4
.yellow-darken5
.yellow-darken6
.green-lighten6
.green-lighten5
.green-lighten4
.green-lighten3
.green-lighten2
.green-lighten1
.green-medium
.green-darken1
.green-darken2
.green-darken3
.green-darken4
.green-darken5
.green-darken6
.blue-lighten6
.blue-lighten5
.blue-lighten4
.blue-lighten3
.blue-lighten2
.blue-lighten1
.blue-medium
.blue-darken1
.blue-darken2
.blue-darken3
.blue-darken4
.blue-darken5
.blue-darken6
.purple-lighten6
.purple-lighten5
.purple-lighten4
.purple-lighten3
.purple-lighten2
.purple-lighten1
.purple-medium
.purple-darken1
.purple-darken2
.purple-darken3
.purple-darken4
.purple-darken5
.purple-darken6

Extra Spectrum

Der erweiterte Farbraum fügt weitere wichtige Farben zur Farbauswahl hinzu.


.flatyellow-lighten6
.flatyellow-lighten5
.flatyellow-lighten4
.flatyellow-lighten3
.flatyellow-lighten2
.flatyellow-lighten1
.flatyellow-medium
.flatyellow-darken1
.flatyellow-darken2
.flatyellow-darken3
.flatyellow-darken4
.flatyellow-darken5
.flatyellow-darken6
.swampgreen-lighten6
.swampgreen-lighten5
.swampgreen-lighten4
.swampgreen-lighten3
.swampgreen-lighten2
.swampgreen-lighten1
.swampgreen-medium
.swampgreen-darken1
.swampgreen-darken2
.swampgreen-darken3
.swampgreen-darken4
.swampgreen-darken5
.swampgreen-darken6
.brightblue-lighten6
.brightblue-lighten5
.brightblue-lighten4
.brightblue-lighten3
.brightblue-lighten2
.brightblue-lighten1
.brightblue-medium
.brightblue-darken1
.brightblue-darken2
.brightblue-darken3
.brightblue-darken4
.brightblue-darken5
.brightblue-darken6
.iceblue-lighten6
.iceblue-lighten5
.iceblue-lighten4
.iceblue-lighten3
.iceblue-lighten2
.iceblue-lighten1
.iceblue-medium
.iceblue-darken1
.iceblue-darken2
.iceblue-darken3
.iceblue-darken4
.iceblue-darken5
.iceblue-darken6
.grey-lighten6
.grey-lighten5
.grey-lighten4
.grey-lighten3
.grey-lighten2
.grey-lighten1
.grey-medium
.grey-darken1
.grey-darken2
.grey-darken3
.grey-darken4
.grey-darken5
.grey-darken6
.brown-lighten6
.brown-lighten5
.brown-lighten4
.brown-lighten3
.brown-lighten2
.brown-lighten1
.brown-medium
.brown-darken1
.brown-darken2
.brown-darken3
.brown-darken4
.brown-darken5
.brown-darken6
.magenta-lighten6
.magenta-lighten5
.magenta-lighten4
.magenta-lighten3
.magenta-lighten2
.magenta-lighten1
.magenta-medium
.magenta-darken1
.magenta-darken2
.magenta-darken3
.magenta-darken4
.magenta-darken5
.magenta-darken6
.aqua-lighten6
.aqua-lighten5
.aqua-lighten4
.aqua-lighten3
.aqua-lighten2
.aqua-lighten1
.aqua-medium
.aqua-darken1
.aqua-darken2
.aqua-darken3
.aqua-darken4
.aqua-darken5
.aqua-darken6
.beige-lighten6
.beige-lighten5
.beige-lighten4
.beige-lighten3
.beige-lighten2
.beige-lighten1
.beige-medium
.beige-darken1
.beige-darken2
.beige-darken3
.beige-darken4
.beige-darken5
.beige-darken6

Erweitertes Spektrum

Der erweiterte Farbraum fügt weitere wichtige Farben zur Farbauswahl hinzu.

.flatyellow-lighten6
.flatyellow-lighten5
.flatyellow-lighten4
.flatyellow-lighten3
.flatyellow-lighten2
.flatyellow-lighten1
.flatyellow-medium
.flatyellow-darken1
.flatyellow-darken2
.flatyellow-darken3
.flatyellow-darken4
.flatyellow-darken5
.flatyellow-darken6
.swampgreen-lighten6
.swampgreen-lighten5
.swampgreen-lighten4
.swampgreen-lighten3
.swampgreen-lighten2
.swampgreen-lighten1
.swampgreen-medium
.swampgreen-darken1
.swampgreen-darken2
.swampgreen-darken3
.swampgreen-darken4
.swampgreen-darken5
.swampgreen-darken6
.brightblue-lighten6
.brightblue-lighten5
.brightblue-lighten4
.brightblue-lighten3
.brightblue-lighten2
.brightblue-lighten1
.brightblue-medium
.brightblue-darken1
.brightblue-darken2
.brightblue-darken3
.brightblue-darken4
.brightblue-darken5
.brightblue-darken6
.iceblue-lighten6
.iceblue-lighten5
.iceblue-lighten4
.iceblue-lighten3
.iceblue-lighten2
.iceblue-lighten1
.iceblue-medium
.iceblue-darken1
.iceblue-darken2
.iceblue-darken3
.iceblue-darken4
.iceblue-darken5
.iceblue-darken6
.grey-lighten6
.grey-lighten5
.grey-lighten4
.grey-lighten3
.grey-lighten2
.grey-lighten1
.grey-medium
.grey-darken1
.grey-darken2
.grey-darken3
.grey-darken4
.grey-darken5
.grey-darken6
.brown-lighten6
.brown-lighten5
.brown-lighten4
.brown-lighten3
.brown-lighten2
.brown-lighten1
.brown-medium
.brown-darken1
.brown-darken2
.brown-darken3
.brown-darken4
.brown-darken5
.brown-darken6
.magenta-lighten6
.magenta-lighten5
.magenta-lighten4
.magenta-lighten3
.magenta-lighten2
.magenta-lighten1
.magenta-medium
.magenta-darken1
.magenta-darken2
.magenta-darken3
.magenta-darken4
.magenta-darken5
.magenta-darken6
.aqua-lighten6
.aqua-lighten5
.aqua-lighten4
.aqua-lighten3
.aqua-lighten2
.aqua-lighten1
.aqua-medium
.aqua-darken1
.aqua-darken2
.aqua-darken3
.aqua-darken4
.aqua-darken5
.aqua-darken6
.beige-lighten6
.beige-lighten5
.beige-lighten4
.beige-lighten3
.beige-lighten2
.beige-lighten1
.beige-medium
.beige-darken1
.beige-darken2
.beige-darken3
.beige-darken4
.beige-darken5
.beige-darken6

Farbkreationen

Wollen Sie einen Webshop für Herbstmode eröffnen, jedoch kein Vorwissen im Bereich Farblehre? Auch das sollte mit den vordefinierten Schemata keine Problem für sie werden.

Herbst Kollektion

.autumnred-lighten6
.autumnred-lighten5
.autumnred-lighten4
.autumnred-lighten3
.autumnred-lighten2
.autumnred-lighten1
.autumnred-medium
.autumnred-darken1
.autumnred-darken2
.autumnred-darken3
.autumnred-darken4
.autumnred-darken5
.autumnred-darken6
.autumngreen-lighten6
.autumngreen-lighten5
.autumngreen-lighten4
.autumngreen-lighten3
.autumngreen-lighten2
.autumngreen-lighten1
.autumngreen-medium
.autumngreen-darken1
.autumngreen-darken2
.autumngreen-darken3
.autumngreen-darken4
.autumngreen-darken5
.autumngreen-darken6
.autumnyellow-lighten6
.autumnyellow-lighten5
.autumnyellow-lighten4
.autumnyellow-lighten3
.autumnyellow-lighten2
.autumnyellow-lighten1
.autumnyellow-medium
.autumnyellow-darken1
.autumnyellow-darken2
.autumnyellow-darken3
.autumnyellow-darken4
.autumnyellow-darken5
.autumnyellow-darken6
.autumnorange-lighten6
.autumnorange-lighten5
.autumnorange-lighten4
.autumnorange-lighten3
.autumnorange-lighten2
.autumnorange-lighten1
.autumnorange-medium
.autumnorange-darken1
.autumnorange-darken2
.autumnorange-darken3
.autumnorange-darken4
.autumnorange-darken5
.autumnorange-darken6
.autumnbrown-lighten6
.autumnbrown-lighten5
.autumnbrown-lighten4
.autumnbrown-lighten3
.autumnbrown-lighten2
.autumnbrown-lighten1
.autumnbrown-medium
.autumnbrown-darken1
.autumnbrown-darken2
.autumnbrown-darken3
.autumnbrown-darken4
.autumnbrown-darken5
.autumnbrown-darken6

Camouflage Kollektion

.camodarkgreen-lighten6
.camodarkgreen-lighten5
.camodarkgreen-lighten4
.camodarkgreen-lighten3
.camodarkgreen-lighten2
.camodarkgreen-lighten1
.camodarkgreen-medium
.camodarkgreen-darken1
.camodarkgreen-darken2
.camodarkgreen-darken3
.camodarkgreen-darken4
.camodarkgreen-darken5
.camodarkgreen-darken6
.camolightgreen-lighten6
.camolightgreen-lighten5
.camolightgreen-lighten4
.camolightgreen-lighten3
.camolightgreen-lighten2
.camolightgreen-lighten1
.camolightgreen-medium
.camolightgreen-darken1
.camolightgreen-darken2
.camolightgreen-darken3
.camolightgreen-darken4
.camolightgreen-darken5
.camolightgreen-darken6
.camobrowngreen-lighten6
.camobrowngreen-lighten5
.camobrowngreen-lighten4
.camobrowngreen-lighten3
.camobrowngreen-lighten2
.camobrowngreen-lighten1
.camobrowngreen-medium
.camobrowngreen-darken1
.camobrowngreen-darken2
.camobrowngreen-darken3
.camobrowngreen-darken4
.camobrowngreen-darken5
.camobrowngreen-darken6
.camolightbrown-lighten6
.camolightbrown-lighten5
.camolightbrown-lighten4
.camolightbrown-lighten3
.camolightbrown-lighten2
.camolightbrown-lighten1
.camolightbrown-medium
.camolightbrown-darken1
.camolightbrown-darken2
.camolightbrown-darken3
.camolightbrown-darken4
.camolightbrown-darken5
.camolightbrown-darken6
.camodarkbrown-lighten6
.camodarkbrown-lighten5
.camodarkbrown-lighten4
.camodarkbrown-lighten3
.camodarkbrown-lighten2
.camodarkbrown-lighten1
.camodarkbrown-medium
.camodarkbrown-darken1
.camodarkbrown-darken2
.camodarkbrown-darken3
.camodarkbrown-darken4
.camodarkbrown-darken5
.camodarkbrown-darken6

Supreme Kollektion

.supreme-lighten6
.supreme-lighten5
.supreme-lighten4
.supreme-lighten3
.supreme-lighten2
.supreme-lighten1
.supreme-medium
.supreme-darken1
.supreme-darken2
.supreme-darken3
.supreme-darken4
.supreme-darken5
.supreme-darken6
.supremewhite-lighten6
.supremewhite-lighten5
.supremewhite-lighten4
.supremewhite-lighten3
.supremewhite-lighten2
.supremewhite-lighten1
.supremewhite-medium
.supremewhite-darken1
.supremewhite-darken2
.supremewhite-darken3
.supremewhite-darken4
.supremewhite-darken5
.supremewhite-darken6

Media

Da Medien Elemente häufig in Webseiten eingebaut werden haben wir einige Klassen bereit gestellt die das Einbinden erleichtern. Wir haben die Medien in die Bereiche Bilder, Videos und Audio geteilt.

Bilder

Um Bilder durch das Framework responsive zu machen gibt es die Klasse .img-wrapper welche es ermöglicht Bilder das sie sich automatisch prozentuell an die Größe des Browserfensters anpassen. Um Bildern ein spezielles Ausehen zu geben können die Klassen .round-img und .circle-img zusätzlich verwendet werden um Bilder abzurunden oder ganz rund zu gestalten.

CommachioI Hagn
CommachioII Hagn
CommachioIII Hagn
<div class="image-wrapper">
    <img class="round-img" src="../lib/img/expimage/CommachioI_HAG.jpg" alt="CommachioI Hagn">
</div>
<div class="image-wrapper">
    <img class="circle-img" src="../lib/img/expimage/CommachioII_HAG.jpg" alt="CommachioII Hagn">
</div>
<div class="image-wrapper">
    <img src="../lib/img/expimage/CommachioIII_HAG.jpg" alt="CommachioIII Hagn">
</div>

Video

Die Klasse .video-wrapper-16 und .video-wrapper-4 ermöglichen das Videos sich prozentuell zum Browserfenster ändern wobei die eine Klasse für 16:9 Videos geeigent ist und die andere für Videos im 4:3 Format.

<div class="video-wrapper-4">
    <video controls class="col xs12">
        <source src="../lib/img/expimage/Attersee%20I%20HAG.m4v" type="video/mp4">
    </video>
</div>
<div class="video-wrapper-16">
   <video controls class="col xs12">
       <source src="../lib/img/expimage/Attersee%20I%20HAG.m4v" type="video/mp4">
   </video>
</div>

Audio

Der <audio> Tag in HTML bietet eine standart Möglichkeit Audiodateien in Webseiten einzubinden. Das default Design des Tags wird in jedem Browser unterschiedlichen dargestellt. Das Framework beinhaltet die Klasse .audio-wrapper welche dem Audio Tag eine individuelles Aussehen, das in allen Browsern gleich ist, gibt.

<h3 class="test">Gleiche Spaltengröße</h3>

Tabellen

Tabellen sind ein weiteres wichtiges Layout Element und können vielseitig eingesetzt werden. Das Framework bietet ein Standartdesign für den <table> Tag. Zusätzlich gibt es 3 unterschiedliche Klassen die dem <table> Tag zugewiesen werden können um der Tabelle ein spezielles Aussehen zu geben. Mit der Klasse .table-light wird beim Überfahren einer Zeile die Hintergrundfarbe dieser Tabelle grau. Durch die Klasse .table-responsive bekommt die Tabelle die Eigenschaft sich prozentual dem Browserfenster anzupassen. Um eine gestreifte Tabelle zu verwenden kann dem <table> Tag die Klasse .table-stripped hinzugefügt werden.

Farben Schriftarten Elemente
Rot Roboto Header
Grün Raleway Cards
Blau Open-Sans Footer
Farben Schriftarten Elemente
Rot Roboto Header
Grün Raleway Cards
Blau Open-Sans Footer
Farben Schriftarten Elemente
Rot Roboto Header
Grün Raleway Cards
Blau Open-Sans Footer
<table>
    <tr>
        <th>Farben</th>
        <th>Schriftarten</th>
        <th>Elemente</th>
    </tr>
    <tr>
        <td>Rot</td>
        <td>Roboto</td>
        <td>Header</td>
    </tr>
    <tr>
        <td>Grün</td>
        <td>Raleway</td>
        <td>Cards</td>
    </tr>
    <tr>
        <td>Blau</td>
        <td>Open-Sans</td>
        <td>Footer</td>
    </tr>
</table>
<table class="table-light">
    <tr>
        <th>Farben</th>
        <th>Schriftarten</th>
        <th>Elemente</th>
    </tr>
    <tr>
        <td>Rot</td>
        <td>Roboto</td>
        <td>Header</td>
    </tr>
    <tr>
        <td>Grün</td>
        <td>Raleway</td>
        <td>Cards</td>
    </tr>
    <tr>
        <td>Blau</td>
        <td>Open-Sans</td>
        <td>Footer</td>
    </tr>
</table>
<table class="table-stripped">
    <tr>
        <th>Farben</th>
        <th>Schriftarten</th>
        <th>Elemente</th>
    </tr>
    <tr>
        <td>Rot</td>
        <td>Roboto</td>
        <td>Header</td>
    </tr>
    <tr>
        <td>Grün</td>
        <td>Raleway</td>
        <td>Cards</td>
    </tr>
    <tr>
        <td>Blau</td>
        <td>Open-Sans</td>
        <td>Footer</td>
    </tr>
</table>

Werkzeuge

Dieser Abschnitt beschäftigt sich mit kleinen Werkzeugen die verwendet werden können um das Layout einer Webseite zu verfeinern. Um den Fluss eines Elements zu verändern gibt es die Klassen .float-right und .float-left. Eine weitere wichtige Klasse ist .block mit ihr können Elemente als Block Elemente definiert werden das heißt das nach diesem Element ein Zeilenumbruch stattfindet. Um Inhalte ersichtlich zu trennen gibt es die Klasse .line mit der eine Trennline hinzugefügt werden kann sie sollte nur innerhalb eines <hr> Tags verwendet werden.

Dieser Text ist links fließend MykonosII Kutis

MykonosII Kutis Dieser Text ist rechts fließend

Das ist ein Block Element

<span>Dieser Text ist links fließend</span>
<img src="../lib/img/expimage/MykonosII_KUT.JPG" class="float-right" alt="MykonosII Kutis">
<span>Dieser Text ist rechts fließend</span>
<img src="../lib/img/expimage/MykonosII_KUT.JPG" class="float-left" alt="MykonosII Kutis">
<span class="block">Das ist ein Block Element</span>

Box Schatten

Da unser Framework Elemente wie Header, Footer und Karten enthält bietet es auch verschiedene Box Schatten für die jeweiligen Elemente an. Der Box Schatten hat den Effekt das er Elemente für den Betrachter so aussehen lässt als würde die entsprechende Komponente nicht Bestandteil der Website sein, sondern oben drauf liegen. Es gibt 5 verschiedene Klassen die einen unterschiedlich starken Schatten werfen. Die Klassen können über den Namen .shadow-ex-light,.shadow-light,.shadow-medium, .shadow-hard und .shadow-ex-hard wobei der Schatten aufsteigend stärker wird.

<div class="shadow-ex-light"></div>
<div class="shadow-light"></div>
<div class="shadow-medium"></div>
<div class="shadow-hard"></div>
<div class="shadow-ex-hard"></div>

Elemente ausblenden

In diesem Abschnitt werden die Klassen .show und .hide erklärt. Das Framework enthält einige Klassen die bestimmen ab welcher Bildschirmgröße welches Element angezeigt werden soll und welches versteckt werden soll. Dafür gibt es die Klassen show-größe und hide-größe. An der Stelle der Größe ist die gewünschte Bildschirmgröße einzusetzen. Es gibt .sl, .md, .md-up.md-down,.lg und nur .show ohne Größe. Dieselben Regeln gelten auch für die .hide Klasse.

Hide

Box hide
Box hide-sl
Box hide-md
Box hide-md-down
Box hide-md-up
Box hide-lg

Show

Box show
Box show-sl
Box show-md
Box show-md-down
Box show-md-up
Box show-lg
<div class="hide">Box hide</div>
<div class="hide-sl">Box hide-sl</div>
<div class="hide-md">Box hide-md</div>
<div class="hide-md-down">Box hide-md-down</div>
<div class="hide-md-up">Box hide-md-up</div>
<div class="hide-lg">Box hide-lg</div>
<div class="show">Box show</div>
<div class="show-sl">Box show-sl</div>
<div class="show-md">Box show-md</div>
<div class="show-md-down">Box show-md-down</div>
<div class="show-md-up">Box show-md-up</div>
<div class="show-lg">Box show-lg</div>

Parallax

Das Parallax-Scrolling ist einer der großen neuen Webdesign-Trends. Bei diesem Effekt handelt es sich um einzelne Ebenen die sich unterschiedlich schnell bewegen so entsteht bei Betrachter der Eindruck von Tiefe. Das Parallax-Scrolling kann dem Framework und der Klasse .parallax einfach implementiert werden. Die Klasse .parallax sollte dabei auf dem <body> oder einem .container angewendet werden.

Creative Framework
<div class="container-xl parallax" style="background-image: url('../lib/img/expimage/MykonosIII_KUT.jpg')">
    Website Content
</div>

Css Animationen

Animationen verdeutlichen dem User, dass eine Aktion stattgefunden hat. Nicht immer ist es sinnvoll sie zu verwenden und auch hier gilt "keep it simple". Eine Animation kann dem User auch eine Art Feedback geben, so können zum Beispiel Erklärungstexte bei falscher Eingabe erscheinen. Ein Weiteres Beispiel wären Informationsboxen oder Ankündigungen bei erstmaligem Anmelden. Für einige dieser Fälle werden Klassen bereitgestellt, die entweder mit dem "transition" oder dem "animation" Attribut ausgestattet sind. Weiteres wurden verschiedenste Schlüsselbildanimationen, oder in Fachspache auch Keyframes gennant, ausprogrammiert. Diese bestimmen die Art der Animation, so kann zum Beispiel ein Element in alle Richtungen hinausbewegt werden.

/* Dauer | Timingfunktion | Verzögerung | #Iterationen | Richtung | Füllmodus | Abspielstatus | Name */
animation: 3s ease-in 1s 2 reverse both paused slidein;
/* Variables Attribut | Dauer | Timingfunktion | Verzögerung */
transition: margin-right 4s ease-in-out 1s;

Schlüsselbildanimationen

Wie oben bereits angesprochen verwenden Animationen Schlüsselbilder. In diesen kann die Position eines Elements, in einer bestimmten Zeitspanne der Animation, bestimmt werden. Im Beispiel unterhalb wird ein Keyframe mittels CSS definiert - Laden Sie jedoch unser Framework herunter müssen sie diese nicht beachten. Verwenden Sie einfach die bereitgestellten Klassennamen im nachfolgenden Bereich.

@keyframes moveOut {
    from {top: 500px;}
    to {top: .200px;}
}

Möglichkeiten

Die unten aufgeführten Klassen rufen beim Erstellen des DOM's Animationen auf. Mit fortgeschrittenem Wissen können die Klassen auch zu anderen Zeitpunkten über JavaScript aufgerufen werden.

<div class="moveIn"></div>
<div class="moveOut"></div>
<div class="slideIn"></div>
<div class="slideOut"></div>
<div class="slideLeft"></div>
<div class="slideRight"></div>
<div class="Wiggle"></div>