Cosa imparerai

Come usare i CSS personalizzati per modificare l’aspetto della web chat di Klaviyo: il launcher, la finestra della chat, le bolle dei messaggi e il Composer dei messaggi. Scoprirai quali variabili del tema e nomi di classe è sicuro prendere come riferimento e quali si romperanno quando Klaviyo rilascerà un aggiornamento.

Questo articolo si applica sia se utilizzi la web chat da sola sia come parte di Customer Hub. L’interfaccia della chat è la stessa in entrambi i casi, quindi lo stesso CSS funziona per entrambi.

Prima di iniziare

Il CSS personalizzato è consigliato solo per addetti al marketing con competenze tecniche o per chi ha accesso a uno sviluppatore. Il team di assistenza di Klaviyo può offrire indicazioni generali, ma non può scrivere o eseguire il debug del CSS personalizzato per te.

Ti servirà:

  • Un ruolo di Proprietario, Amministratore o Manager
  • Familiarità con i selettori CSS e le proprietà personalizzate (variabili CSS)

Prima di scrivere CSS personalizzato, verifica se le impostazioni di progettazione integrate fanno già quello che ti serve. Colori, font, forma dei pulsanti e posizione del launcher sono tutti configurabili senza codice e queste impostazioni rimangono anche dopo gli aggiornamenti di Klaviyo. Usa il CSS personalizzato solo per ciò che non è coperto dalle impostazioni di progettazione.

Dove aggiungere il tuo CSS personalizzato

Il punto in cui trovi l'editor CSS personalizzato dipende dalla tua configurazione.

Se utilizzi Customer Hub

  1. Vai a Customer Hub > Design.
  2. Scorri fino alla sezione Personalizzato in fondo alle impostazioni dello stile.
  3. Fai clic su Aggiungi CSS personalizzato oppure modifica il CSS già presente.
  4. Clicca su Salva.

Se utilizzi la web chat autonoma

  1. Vai su Impostazioni > web chat > Design.
  2. Scorri fino alla sezione Personalizzato in fondo alle impostazioni dello stile.
  3. Fai clic su Aggiungi CSS personalizzato oppure modifica il CSS già presente.
  4. Clicca su Salva.

Se hai Customer Hub abilitato, le impostazioni di design della web chat ti indirizzeranno invece a Customer Hub. È previsto: Customer Hub gestisce il design per entrambe le superfici, quindi c’è un unico posto per personalizzare lo stile di tutto.

Come viene applicato il CSS personalizzato

Il tuo CSS viene aggiunto a un tag di stile sulla vetrina del tuo negozio, dopo gli stili di Klaviyo. Da questo derivano due aspetti:

  • Il tuo CSS ha la meglio. Poiché viene caricato per ultimo, le tue regole sostituiscono le impostazioni predefinite di Klaviyo senza bisogno di !important nella maggior parte dei casi.
  • Il tuo CSS non è delimitato alla chat. Si applica all’intera pagina. Definisci sempre l’ambito dei selettori su un elemento della chat, invece di scrivere regole generiche come button { … }, che interesserebbero l’intera vetrina del negozio.

Inizia con le variabili del tema

Il modo più affidabile per modificare lo stile della web chat è sovrascrivere le variabili del tema di Klaviyo in un blocco :root. Sono stabili, vengono applicate correttamente a cascata in tutta l’interfaccia e hanno molte meno probabilità di interrompersi rispetto al puntare a singoli elementi.

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

Variabili del messaggio via chat

Variabile

Impostazioni predefinite

Controlli

--atlas-chat-bubble-background

#f2f2f2

Sfondo dei messaggi dell'agente (in arrivo)

--atlas-chat-bubble-text-primary

#322e2f

Colore del testo dei messaggi dell’agente (in arrivo)

--atlas-chat-bubble-display-name

#797979

Nome del mittente mostrato sopra un messaggio

--atlas-message-border-radius

16px

Raggio dell'angolo su tutte le bolle dei messaggi

I messaggi di Shopper (in uscita) riutilizzano intenzionalmente i colori del tuo brand: la bolla usa --atlas-button-primary e il testo usa --atlas-text-primary-inverse, che imposti entrambi nelle impostazioni di progettazione.

Variabili di colore e superficie

Variabile

Impostazioni predefinite

Controlli

--atlas-background-main

#faf9f8

Sfondo della finestra della chat

--atlas-background-content

#ffffff

Schede e superfici rialzate

--atlas-text-primary

#1d1e20

Testo del corpo

--atlas-text-secondary

#4b4d4e

Testo secondario e di supporto

--atlas-text-placeholder

#747576

Testo segnaposto di Composer

--atlas-primary-color

#3f5260

Colore d'accento

--atlas-button-primary

#3f5260

Sfondo del fumetto del cliente e del pulsante principale

--atlas-text-primary-inverse

#ffffff

Testo sui pulsanti principali e nelle bolle per i clienti

--atlas-border-light

rgba(0, 0, 0, 0.05)

Divisori discreti

--atlas-border-focus

#41a1e6

Colore del contorno della messa a fuoco

Variabili di forma e spaziatura

Variabile

Impostazioni predefinite

Controlli

--atlas-drawer-inset-border-radius

12px

Raggio dell'angolo della finestra della chat

--atlas-button-border-radius

8px

Raggio dell'angolo del pulsante

--atlas-input-border-radius-normal

8px

Raggio dell'angolo di input

--atlas-card-border-radius-normal

24px

Raggio dell'angolo della scheda

--atlas-shadow-medium

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

Ombra della finestra della chat

Variabili tipografiche

Variabile

Impostazioni predefinite

Controlli

--atlas-font-family

Stack di font di sistema

Carattere del corpo

--atlas-heading-font-family

Stack di font di sistema

Carattere dell'intestazione

--atlas-font-size-normal

16px

Dimensione base del corpo del testo

--atlas-font-size-small

14px

Dimensione del testo piccola

--atlas-font-weight-normal

400

Peso corporeo

--atlas-font-weight-heading

700

Spessore dell’intestazione

Molti di questi sono già compilati in base alle impostazioni di design. È preferibile impostare font e colori nell’interfaccia utente delle impostazioni di design: usa le variabili per i valori che l’interfaccia utente non espone.

Elementi di destinazione con hook di classe

Quando una variabile del tema non basta, indirizza direttamente gli elementi. Klaviyo garantisce i nomi delle classi riportati di seguito.

Qualsiasi nome di classe che trovi nell’inspector del browser e che non è presente in questo elenco non è sicuro da usare. La maggior parte dei nomi di classe interni include un hash di build (ad esempio Chat-chatWindow-a1B2c) che cambia ogni volta che Klaviyo rilascia un aggiornamento, interrompendo silenziosamente il CSS. La regola generale: se una classe inizia con kl-hub-, è sicura. Se non lo fa, non lo è.

Elementi della chat

Selettore

Elemento

.kl-hub-launcher

Il pulsante mobile del launcher della chat

.kl-hub-drawer

La finestra della chat

.kl-hub-drawer__header

Intestazione della finestra della chat

.kl-hub-drawer__content

L'area dei messaggi scorrevole

.kl-hub-message

Una bolla di messaggio (sia dell'agente che dell'acquirente)

.kl-hub-chat-input-wrapper

Il contenitore del Composer dei messaggi

.kl-hub-chat-input

Il campo di testo di Composer

.kl-hub-chat-prompt-button

Pulsanti per avviare la conversazione e di risposta rapida

.kl-hub-modal-veil

Lo sfondo dietro la finestra della chat

La finestra della chat include anche una classe che indica la schermata corrente — .kl-hub-route-chat per la chat stessa. Nella web chat autonoma questa è sempre .kl-hub-route-chat. In Customer Hub cambia man mano che chi fa acquisti naviga (.kl-hub-route-home, .kl-hub-route-orders, e così via), il che ti permette di applicare CSS a una sola schermata.

Il pulsante di invio non ha una classe dedicata. Prendilo come target tramite il Composer:

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

Elementi condivisi

Selettore

Elemento

.kl-hub-text

Qualsiasi elemento di testo

.kl-hub-heading

Qualsiasi intestazione (anche .kl-hub-h1) tramite .kl-hub-h5)

.kl-hub-p

Testo del paragrafo (anche .kl-hub-p-small, kl-hub-p-tiny kl-hub-p-large)

.kl-hub-link

Link

.kl-hub-button

Qualsiasi pulsante (anche .kl-hub-button-primary, kl-hub-button-secondary kl-hub-button-tertiary)

.kl-hub-input

Qualsiasi inserimento di testo

.kl-hub-card

Schede, incluse le schede prodotto

.kl-hub-thumbnail

Anteprime del prodotto

.kl-hub-icon

Icone

.kl-hub-toast

Notifiche toast

Stilizzare in modo diverso i messaggi dell'agente e del cliente

Questa è la richiesta più comune e richiede un approccio specifico. Le bolle di agente e acquirente condividono la singola classe .kl-hub-message — non esiste una classe stabile che le distingua, quindi non puoi selezionarne una direttamente.

Usa invece le variabili del tema, che gestiscono già i due elementi in modo diverso:

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 colora anche i pulsanti principali. Se ti serve che la bolla del cliente e i pulsanti siano diversi, al momento non è supportato.

Esempi

Rendi tutto squadrato

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

Intestazioni e pulsanti in maiuscolo

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

Rendi più grande il launcher con un’ombreggiatura personalizzata

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

Il launcher imposta diverse proprietà direttamente sull’elemento, quindi le regole del launcher devono includere !important per avere effetto. Questo è l’unico caso in cui è normalmente necessario.

Allarga la finestra della chat su desktop

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

Se il CSS non si salva

Quando salvi, Klaviyo verifica che il CSS venga analizzato correttamente. Se non è così, vedrai CSS non valido. Controlla la tua sintassi. e le modifiche non verranno salvate.

Un foglio di stile viene rifiutato del tutto solo quando non produce alcuna regola, il che di solito significa che ciò che hai incollato non è CSS. Cause comuni:

  • Incollare testo normale, HTML o un tag di stile anziché regole CSS
  • Incollare una parte di una dichiarazione anziché una regola completa
  • Un foglio di stile in cui ogni regola presenta un errore di sintassi

In genere, un singolo errore di sintassi non blocca il salvataggio. Invece, compromette silenziosamente le regole attorno. Il testo fuori posto prima di una regola viene inglobato nel selettore di quella regola, quindi la regola non corrisponde a nulla. Una regola non chiusa ingloba le dichiarazioni che la seguono. Una parentesi graffa di chiusura isolata viene ignorata. Quindi, se una regola che hai scritto non ha alcun effetto, controlla la sintassi di tutto ciò che c’è sopra, non solo della regola stessa.

Cosa non può fare un CSS personalizzato

  • Modifica il testo. Il CSS personalizzato non può modificare la formulazione. Per farlo, usa le impostazioni di progettazione e dei contenuti.
  • Riordina o riposiziona gli elementi oltre ciò che consente il layout CSS. La struttura della chat non è personalizzabile.
  • Segmenta separatamente le bolle di agenti e di acquirenti per classe. Usa le variabili del tema, come descritto sopra.
  • Sopravvivi automaticamente alle riprogettazioni. Gli hook delle classi e le variabili sono stabili durante gli aggiornamenti normali, ma una riprogettazione significativa potrebbe richiedere di rivedere i CSS. Ripeti il test dopo le release principali.

Risorse aggiuntive

  • Come definire lo stile del tuo Customer Hub

    Scopri le opzioni di design per lo stile del drawer di Customer Hub e come puoi progettarlo in modo che rispecchi il tuo brand. Poiché l'interfaccia di Customer Hub è parte integrante dell'esperienza del cliente, la best practice è applicarne lo stile in modo che appaia come un'estensione del tuo sito web.

  • Primi passi con web chat

    Scopri la web chat, un canale di comunicazione bidirezionale che puoi aggiungere al tuo sito web. La web chat può essere configurata in modo indipendente per l'uso con Customer Agent e Helpdesk, ma è anche pensata per essere una parte integrante e fluida di Customer Hub. La web chat consente alla tua azienda di interagire in tempo reale con conversazioni personalizzate con chi visita il tuo sito web, così può ottenere facilmente risposte alle sue domande o assistenza per eventuali problemi.

  • Risoluzione dei problemi relativi a CSS, JavaScript e HTML personalizzati in Klaviyo

    Scopri come risolvere i problemi del codice personalizzato quando importi un modello HTML personalizzato o crei un modello con codice personalizzato.

Questo articolo è stato utile?
Usa questo modulo solo per il feedback sull'articolo. Scopri come contattare l'assistenza.

Esplora altri contenuti di Klaviyo

Community
Entra in contatto con altre aziende simili, partner ed esperti di Klaviyo per trovare ispirazione, condividere approfondimenti e ottenere risposte a tutte le tue domande.
Partner
Assumi un esperto certificato Klaviyo per aiutarti con un compito specifico o per la gestione continua del marketing.
Assistenza

Accedi all'assistenza tramite il tuo account.

Assistenza via e-mail (prova gratuita e account a pagamento) Disponibile 24 ore su 24, 7 giorni su 7

Chat/assistente virtuale
La disponibilità può variare in base alla località e al tipo di piano