Übersicht

So verwendest du benutzerdefiniertes CSS, um das Erscheinungsbild des Klaviyo Web-Chats zu ändern – den Launcher, das Chatfenster, die Nachrichtenblasen und den Nachrichten-Composer. Du erfährst, welche Theme-Variablen und Klassennamen du sicher ansprechen kannst und welche beim Ausrollen eines Updates durch Klaviyo nicht mehr funktionieren.

Dieser Artikel gilt unabhängig davon, ob du Web-Chat allein oder als Teil von Klaviyo Customer Hub verwendest. Die Chat-Oberfläche ist in beiden Fällen gleich, daher funktioniert dasselbe CSS für beide.

Bevor du anfängst

Benutzerdefiniertes CSS wird nur für technisch versierte Marketer*innen empfohlen oder für diejenigen, die Zugang zu Entwickler*innen haben. Das Support-Team von Klaviyo kann allgemeine Hinweise geben, kann jedoch kein benutzerdefiniertes CSS für dich schreiben oder debuggen.

Du brauchst:

  • Eine Rolle als Kontoinhaber, Administrator oder Manager
  • Vertrautheit mit CSS-Selektor*innen und benutzerdefinierten Eigenschaften (CSS-Variablen)

Bevor du benutzerdefiniertes CSS schreibst, prüfe, ob die integrierten Design-Einstellungen bereits das tun, was du brauchst. Farben, Schriftarten, Button-Form und Launcher-Position lassen sich alle ohne Code konfigurieren, und diese Einstellungen bleiben bei Klaviyo-Updates erhalten. Verwende benutzerdefiniertes CSS nur für das, was die Design-Einstellungen nicht abdecken.

Wo du dein benutzerdefiniertes CSS hinzufügst

Wo du den Editor für benutzerdefiniertes CSS findest, hängt von deiner Einrichtung ab.

Wenn du den Klaviyo Customer Hub verwendest

  1. Gehe zu Klaviyo Customer Hub > Design.
  2. Scrolle zum Abschnitt Benutzerdefiniert unten in den Stileinstellungen.
  3. Klicke auf Benutzerdefiniertes CSS hinzufügen oder bearbeite das bereits vorhandene CSS.
  4. Klicke auf Speichern.

Wenn du eigenständigen Web-Chat verwendest

  1. Navigiere zu Einstellungen > Web-Chat > Design.
  2. Scrolle zum Abschnitt Benutzerdefiniert unten in den Stileinstellungen.
  3. Klicke auf Benutzerdefiniertes CSS hinzufügen oder bearbeite das bereits vorhandene CSS.
  4. Klicke auf Speichern.

Wenn du Klaviyo Customer Hub aktiviert hast, führen dich die Web-Chat-Designeinstellungen stattdessen zu Klaviyo Customer Hub. Das ist zu erwarten – Klaviyo Customer Hub verwaltet das Design für beide Oberflächen, sodass es einen Ort gibt, um alles zu gestalten.

Wie benutzerdefiniertes CSS angewendet wird

Dein CSS wird in einem Style-Tag in deinem Storefront hinzugefügt, nach den eigenen Styles von Klaviyo. Daraus ergeben sich zwei Dinge:

  • Dein CSS setzt sich durch. Da es zuletzt geladen wird, überschreiben deine Regeln in den meisten Fällen die Standardeinstellungen von Klaviyo, ohne dass !important erforderlich ist.
  • Dein CSS ist nicht auf den Chat begrenzt. Es gilt für deine gesamte Seite. Begrenze deine Selektoren immer auf ein Chat-Element, statt einfache Regeln wie button { … } zu schreiben, die dein gesamtes Storefront betreffen würden.

Beginne mit Theme-Variablen

Die zuverlässigste Methode, den Web-Chat neu zu gestalten, besteht darin, die Theme-Variablen von Klaviyo in einem :root-Block zu überschreiben. Diese sind stabil, sie werden korrekt durch die gesamte Benutzeroberfläche vererbt, und es ist deutlich weniger wahrscheinlich, dass sie kaputtgehen, als wenn du einzelne Elemente gezielt ansprichst.

css
:root {
  --atlas-chat-bubble-background: #f0ebe4;
  --atlas-message-border-radius: 4px;
}

Variablen für Chat-Nachrichten

Variabel

Standard

Steuerelemente

--atlas-chat-bubble-background

#f2f2f2

Hintergrund von Agent*innen-Nachrichten (eingehend)

--atlas-chat-bubble-text-primary

#322e2f

Textfarbe von Agent*innen-Nachrichten (eingehend)

--atlas-chat-bubble-display-name

#797979

Absendername, der über einer Nachricht angezeigt wird

--atlas-message-border-radius

16px

Eckenradius bei allen Nachrichtenblasen

Nachrichten von Shopper*innen (ausgehend) verwenden absichtlich deine Markenfarben wieder: Die Sprechblase nutzt --atlas-button-primary und der Text nutzt --atlas-text-primary-inverse – beides legst du in den Designeinstellungen fest.

Farb- und Oberflächenvariablen

Variabel

Standard

Steuerelemente

--atlas-background-main

#faf9f8

Hintergrund des Chatfensters

--atlas-background-content

#ffffff

Karten und erhöhte Oberflächen

--atlas-text-primary

#1d1e20

Haupttext

--atlas-text-secondary

#4b4d4e

Sekundärer und Hilfstext

--atlas-text-placeholder

#747576

Composer-Platzhaltertext

--atlas-primary-color

#3f5260

Akzentfarbe

--atlas-button-primary

#3f5260

Hintergrund der primären Schaltfläche und der Shopper-Bubble

--atlas-text-primary-inverse

#ffffff

Text auf primären Schaltflächen und Shopper-Bubbles

--atlas-border-light

rgba(0, 0, 0, 0.05)

Dezente Trennlinien

--atlas-border-focus

#41a1e6

Fokus-Ringfarbe

Form- und Abstandsvariablen

Variabel

Standard

Steuerelemente

--atlas-drawer-inset-border-radius

12px

Eckradius des Chatfensters

--atlas-button-border-radius

8px

Eckradius der Schaltfläche

--atlas-input-border-radius-normal

8px

Eckradius für Eingaben

--atlas-card-border-radius-normal

24px

Eckradius der Karte

--atlas-shadow-medium

0px 8px 16px 0px rgba(55, 63, 71, 0.2)

Schatten des Chatfensters

Typografie-Variablen

Variabel

Standard

Steuerelemente

--atlas-font-family

System-Schriftartenstapel

Schriftart für Text

--atlas-heading-font-family

System-Schriftartenstapel

Überschriftenschriftart

--atlas-font-size-normal

16px

Basis-Textgröße

--atlas-font-size-small

14px

Kleine Textgröße

--atlas-font-weight-normal

400

Textkörper-Gewichtung

--atlas-font-weight-heading

700

Überschriftstärke

Einige davon werden bereits durch deine Designeinstellungen vorgegeben. Schriftarten und Farben in der Design-Einstellungs-UI festzulegen ist vorzuziehen – verwende die Variablen für Werte, die die UI nicht verfügbar macht.

Elemente mit Klassen-Hooks ansprechen

Wenn eine Theme-Variable nicht ausreicht, sprich Elemente direkt an. Klaviyo garantiert die folgenden Klassennamen.

Jeder Klassenname, den du in der Inspector-Ansicht deines Browsers findest und der nicht auf dieser Liste steht, ist nicht sicher zu verwenden. Die meisten internen Klassennamen enthalten einen Build-Hash (z. B. Chat-chatWindow-a1B2c), der sich jedes Mal ändert, wenn Klaviyo ein Update veröffentlicht, wodurch dein CSS stillschweigend nicht mehr funktioniert. Faustregel: Wenn eine Klasse mit kl-hub- beginnt, ist sie sicher. Wenn nicht, ist sie es nicht.

Chat-Elemente

Selektor

Element

.kl-hub-launcher

Die schwebende Chat-Launcher-Schaltfläche

.kl-hub-drawer

Das Chatfenster

.kl-hub-drawer__header

Die Kopfzeile des Chatfensters

.kl-hub-drawer__content

Der scrollbare Nachrichtenbereich

.kl-hub-message

Eine Sprechblase (Agent*in und Käufer*in gleichermaßen)

.kl-hub-chat-input-wrapper

Der Message-Composer-Container

.kl-hub-chat-input

Das Textfeld „Composer“

.kl-hub-chat-prompt-button

Konversationseinstieg und Schnellantwort-Schaltflächen

.kl-hub-modal-veil

Der Hintergrund hinter dem Chatfenster

Das Chatfenster trägt außerdem eine Klasse, die den aktuellen Bildschirm benennt – .kl-hub-route-chat für den Chat selbst. Im eigenständigen Web-Chat ist das immer .kl-hub-route-chat. Im Klaviyo Customer Hub ändert sie sich, wenn der*die Kund*in navigiert (.kl-hub-route-home, .kl-hub-route-orders, und so weiter), sodass du CSS auf einen Bildschirm eingrenzen kannst.

Die Schaltfläche „Senden“ hat keine dedizierte Klasse. Richte es über den Composer aus:

css
.kl-hub-chat-input-wrapper .kl-hub-button-primary {
  background: #2f4f4f;
}

Geteilte Elemente

Selektor

Element

.kl-hub-text

Beliebiger Text

.kl-hub-heading

Jede Überschrift (auch .kl-hub-h1 bis .kl-hub-h5)

.kl-hub-p

Absatztext (auch .kl-hub-p-small, .kl-hub-p-tiny, .kl-hub-p-large)

.kl-hub-link

Links

.kl-hub-button

Jede Schaltfläche (auch .kl-hub-button-primary, .kl-hub-button-secondary, .kl-hub-button-tertiary)

.kl-hub-input

Beliebige Texteingabe

.kl-hub-card

Cards, einschließlich Produktkarten

.kl-hub-thumbnail

Produkt-Miniaturansichten

.kl-hub-icon

Symbole

.kl-hub-toast

Toast-Benachrichtigungen

Agent*innen- und Shopper-Nachrichten unterschiedlich gestalten

Dies ist die häufigste Anfrage, und sie erfordert einen spezifischen Ansatz. Agent*innen- und Shopper-Bubbles teilen sich die einzelne .kl-hub-message Klasse – es gibt keine stabile Klasse, die sie unterscheidet, daher kannst du keine davon direkt auswählen.

Verwende stattdessen die Theme-Variablen, da diese die beiden bereits unterschiedlich behandeln:

css
:root {
  /* Agent messages */
  --atlas-chat-bubble-background: #f0ebe4;
  --atlas-chat-bubble-text-primary: #2b2b2b;

  /* Shopper messages */
  --atlas-button-primary: #1f3a3d;
  --atlas-text-primary-inverse: #ffffff;
}

--atlas-button-primary färbt auch deine primären Schaltflächen. Wenn sich die Shopper-Blase und deine Schaltflächen unterscheiden sollen, wird das derzeit nicht unterstützt.

Beispiele

Alles rechtwinklig machen

css
:root {
  --atlas-drawer-inset-border-radius: 0;
  --atlas-message-border-radius: 0;
  --atlas-button-border-radius: 0;
  --atlas-input-border-radius-normal: 0;
}

Überschriften und Buttons in Großbuchstaben

css
.kl-hub-heading,
.kl-hub-button {
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

Launcher mit einem benutzerdefinierten Schatten vergrößern

css
.kl-hub-launcher {
  width: 72px !important;
  height: 72px !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.25) !important;
}

Der Launcher setzt mehrere Eigenschaften direkt auf dem Element, daher benötigen Launcher-Regeln !important, um wirksam zu werden. Dies ist der einzige Ort, an dem es routinemäßig erforderlich ist.

Vergrößere das Chatfenster auf dem Desktop

css
@media (min-width: 900px) {
  .kl-hub-drawer {
    width: 480px;
  }
}

Wenn dein CSS nicht gespeichert wird

Wenn du speicherst, prüft Klaviyo, ob dein CSS geparst werden kann. Wenn nicht, siehst du Ungültiges CSS. Bitte überprüfe deine Syntax. und deine Änderungen werden nicht gespeichert.

Ein Stylesheet wird nur dann vollständig abgelehnt, wenn es überhaupt keine Regeln erzeugt, was normalerweise bedeutet, dass das, was du eingefügt hast, kein CSS ist. Häufige Ursachen:

  • Einfügen von Plaintext, HTML oder einem Style-Tag statt CSS-Regeln
  • Einfügen eines Teils einer Deklaration statt einer vollständigen Regel
  • Ein Stylesheet, in dem jede Regel einen Syntaxfehler hat

Ein einzelner Syntaxfehler blockiert das Speichern in der Regel nicht. Stattdessen macht er die Regeln drum herum stillschweigend kaputt. Verirrter Text vor einer Regel wird in den Selektor dieser Regel aufgenommen, sodass die Regel auf nichts zutrifft. Eine nicht geschlossene Regel verschluckt die Deklarationen, die danach folgen. Eine verirrte schließende geschweifte Klammer wird ignoriert. Wenn eine Regel, die du geschrieben hast, also keine Wirkung hat, überprüfe die Syntax von allem darüber, nicht nur die Regel selbst.

Was benutzerdefiniertes CSS nicht kann

  • Text ändern. Mit benutzerdefiniertem CSS kannst du keine Formulierungen bearbeiten. Verwende dafür die Design- und Inhaltseinstellungen.
  • Elemente neu anordnen oder neu positionieren, über das hinaus, was das CSS-Layout zulässt. Die Struktur des Chats ist nicht anpassbar.
  • Agent*innen- und Shopper-Blasen separat nach Klasse ansprechen. Verwende Theme-Variablen, wie oben beschrieben.
  • Überstehe Redesigns automatisch. Klassen-Hooks und Variablen sind bei normalen Updates stabil, aber ein umfangreiches Redesign kann erfordern, dass du dein CSS erneut prüfst. Teste nach großen Releases erneut.

Weitere Ressourcen

  • So gestaltest du den Klaviyo Customer Hub

    Erfahre mehr über Designoptionen zum Gestalten deines Klaviyo Customer Hub-Drawers und wie du ihn passend zu deiner Marke designen kannst. Da die Oberfläche des Klaviyo Customer Hub fest in das Kund*innenerlebnis eingebunden ist, ist es Best Practice, sie so zu gestalten, dass sie wie eine Erweiterung deiner Website wirkt.

  • Erste Schritte mit dem Web-Chat

    Erfahre mehr über Web-Chat, einen 2-Wege-Kommunikationskanal, den du zu deiner Website hinzufügen kannst. Web-Chat kann eigenständig eingerichtet werden, damit du ihn mit Customer Agent und Helpdesk nutzen kannst, ist aber auch als nahtloser Bestandteil des Klaviyo Customer Hub konzipiert. Web-Chat ermöglicht es deinem Unternehmen, Live- und personalisierte Gespräche mit Besucher*innen auf deiner Website zu führen, damit sie leicht Antworten auf ihre Fragen oder Unterstützung bei Problemen erhalten können.

  • Fehlerbehebung bei benutzerdefiniertem CSS, JavaScript und HTML in Klaviyo

    Hier erfährst du, wie du benutzerdefinierten Code behebst, wenn du eine benutzerdefinierte HTML-Vorlage importierst oder deine eigene benutzerdefiniert codierte Vorlage erstellst.

War dieser Artikel hilfreich?
Nutze dieses Formular nur für Feedback zu Artikeln. So kontaktierst du den Support.

Mehr von Klaviyo entdecken

Community
Vernetze dich mit Kolleg*innen, Partner*innen und Klaviyo-Expert*innen, um dich inspirieren zu lassen, Erkenntnisse auszutauschen und Antworten auf deine Fragen zu erhalten.
Partner
Beauftragen Sie einen Klaviyo-zertifizierten Experten, der Ihnen bei einer bestimmten Aufgabe hilft oder für das laufende Marketing-Management zuständig ist.
Support

Kontaktiere den Support über dein Konto.

Support per E-Mail (kostenlose Testversion und kostenpflichtige Konten) Verfügbar 24/7

Chat / virtuelle Unterstützung
Verfügbarkeit abhängig von Standort und Abonnementtyp