{% extends 'admin/shell.html.twig' %} {% set nav = 'theme' %} {# Die lokalen Schriftdateien, sofern es sie gibt: dann zeigt die Vorschau jede Google-Schrift so, wie die Website sie ausliefert. Von Google selbst wird hier nichts geladen. #} {% block styles %}{% if fontsStylesheet %}{% endif %}{% endblock %} {% block scripts %}{% endblock %} {% block title %}Design{% endblock %} {% block heading %}Farben, Schriften, Grundtypografie{% endblock %} {% block lead %}Das ist die Grundlage für die ganze Website. Jeder Block erbt von hier und kann jeden Wert einzeln überschreiben – je Gerät und beim Überfahren.{% endblock %} {# Eine Farbe der Palette als Karte: der Farbwähler ist die Fläche selbst. #} {% macro color(n, row) %}
  • {% endmacro %} {# Eine Schrift als Karte: oben die Probe in der Schrift selbst, darunter die Einstellungen. #} {% macro font(n, row, fallbacks, weights) %}
  • Zwölf Boxkämpfer jagen Viktor quer über den großen Sylter Deich. {% for weight in weights %}{{ weight }}{% endfor %}
    Schnitte {% for weight in weights %} {% endfor %}
  • {% endmacro %} {% block content %} {% import _self as karte %} {% set emptyColor = {key: '', name: '', value: '#4a7c59'} %} {% set emptyFont = {key: '', name: '', family: '', source: 'google', fallback: 'sans-serif', weights: [400, 700]} %}

    Farbpalette {{ theme.colors|length }}

    Jede Farbe hat einen Schlüssel – im Editor als @schlüssel, und eine Änderung hier wirkt überall
      {% for row in theme.colors|merge([emptyColor, emptyColor]) %}{{ karte.color(loop.index0, row) }}{% endfor %}

    Eine Farbe ohne Schlüssel wird nicht gespeichert – so lässt sich eine Farbe auch ohne Skript entfernen. Die beiden leeren Karten sind für neue Farben.

    Schriften {{ theme.fonts|length }}

    Systemschrift oder Google Fonts – ausgeliefert vom eigenen Server
      {% for row in theme.fonts|merge([emptyFont]) %}{{ karte.font(loop.index0, row, fallbacks, weights) }}{% endfor %}

    Bei Google Fonts den Namen genau wie dort schreiben, zum Beispiel Inter oder Playfair Display. Je Schnitt wird eine Datei geladen – nur ankreuzen, was wirklich gebraucht wird. {% if fontsStylesheet %}Die Probe nutzt die Schriftdateien auf diesem Server; eine neue Schrift erscheint darin erst, wenn sie unten geholt wurde.{% else %}Die Probe zeigt eine Google-Schrift erst, wenn sie unten auf diesen Server geholt wurde.{% endif %}

    Grundtypografie

    Gilt überall, solange ein Block nichts anderes sagt

    1,25 ergibt eine ruhige Staffelung, 1,5 eine sehr kontrastreiche.

    Gilt für jedes Bild auf der Website – auch in Galerien, Logoleisten und Beitragslisten. 0px macht sie eckig. Ein einzelnes Bild lässt sich im Editor unter Design → Bild → Bildecken abweichend einstellen.

    Abschnitte mit der Inhaltsbreite „Breit“ oder „Randlos“ halten sich nicht daran – das ist der Zweck dieser beiden.

    Aus der Palette wählen oder eine eigene Farbe eintragen. Eine Palettenfarbe folgt späteren Änderungen an der Palette, eine eigene bleibt, wie sie ist.

    Aus sieht ruhiger aus, aber dann erkennt man einen Link im Text nur an der Farbe – für Menschen mit Farbsehschwäche also gar nicht. Beim Überfahren erscheint der Strich in beiden Fällen. Menüs, Karten und Schaltflächen sind davon nicht betroffen.

    {# Die Probe: so liest sich die Website mit diesen Werten. Ohne Skript in der Schrift der Verwaltung, mit Skript in Schrift, Größe, Zeilenhöhe und Farben von hier. #}
    Standardbutton

    Die Grundlage für alle Button-Elemente. Eigene Varianten und Gestaltung im Editor haben Vorrang.

    {% for key, options in buttonOptions %}
    {% endfor %}
    {% for key, label in {backgroundColor: 'Button-Farbe', color: 'Button-Textfarbe', hoverBackgroundColor: 'Button-Farbe beim Überfahren', hoverColor: 'Textfarbe beim Überfahren'} %}
    {% endfor %}

    Live-Vorschau

    {% for preset in buttonPresets %}{% endfor %}
    Gilt sofort auf allen Seiten.

    Schriften ausliefern

    {{ fontsMissing ? fontsMissing|length ~ ' fehlt noch' : 'immer vom eigenen Server' }}
    {% if fontsMissing is empty and not fontsLocal %}

    Dieses Design nutzt nur Systemschriften – es lädt ohnehin nichts von Google.

    {% else %} {% if fontsLocal %}

    Die Schriften liegen auf diesem Server. Besucher laden nichts von Google, und die Seite baut sich schneller auf.

    {% else %}

    Die Schriftdateien fehlen auf diesem Server. Bis sie hier liegen, zeigt die Website die eingestellte Ersatzschrift – von Google wird nichts geladen, weder hier noch beim Besucher.

    {% endif %} {% if fontsMissing %}

    Noch nicht hier: {{ fontsMissing|join(', ') }}.

    {% endif %}
    {% endif %}

    KantSites · Arbeitsstand

    {% endblock %}