Własny CSS
Jak nadać widgetowi własne style CSS, z pełną listą nazw klas i zmiennych, na których możesz polegać.
Gdy motywy i kolory nie wystarczają, możesz napisać do widgetu własny CSS. Pole Własny CSS znajdziesz w zakładce Ustawienia widgetu, w sekcji Styl. Jest dostępne na poziomie personalizacji Zaawansowana, który obejmuje plan Professional. Co zawiera każdy plan, opisujemy w artykule Personalizacja widgetu.
Jak stosowany jest Twój CSS
Widget działa w odizolowanej części strony. Twój CSS jest stosowany wyłącznie wewnątrz widgetu, więc nie zmieni niczego w pozostałej części Twojej witryny. Działa to też w drugą stronę: style Twojej strony nie wpływają na widget.
Style nakładają się w tej kolejności, a każdy kolejny krok nadpisuje poprzedni:
- motyw,
- kolor główny i kolor tekstu na tle głównym,
- kolory zaawansowane ustawione dla poszczególnych elementów,
- Twój własny CSS.
Twój CSS jest dodawany na końcu, a motyw i kolory zaawansowane są
zapisane tak, by nigdy nie miały przed nim pierwszeństwa. Każda Twoja
reguła z co najmniej jednym selektorem klasy, np. .fibly-header albo
.fibly-root, wygrywa z motywem i z kolorami zaawansowanymi. Nie
potrzebujesz dłuższych selektorów, żeby nadpisać motyw.
Podgląd na żywo na stronie ustawień stosuje Twój CSS na bieżąco, więc efekt sprawdzisz przed zapisaniem.
Ograniczenia
- CSS może mieć najwyżej 20 KB.
@importjest niedozwolony. Aby zmienić krój pisma, użyj ustawienia Czcionka.- CSS nie może zawierać zamykającego znacznika
</style>.
Jeśli CSS narusza któreś z tych ograniczeń, panel wyświetli błąd i go nie zapisze.
Nazwy klas
Każdy główny element widgetu ma klasę zaczynającą się od fibly-. Używaj
tych klas w selektorach zamiast innych nazw klas widocznych w źródle
strony, które mogą się zmienić w dowolnej chwili.
| Klasa | Element |
|---|---|
.fibly-launcher | Przycisk czatu widoczny na stronie, gdy widget jest zwinięty. |
.fibly-launcher-icon | Ikona lub obrazek wewnątrz przycisku czatu. |
.fibly-panel | Całe otwarte okno czatu. |
.fibly-header | Pasek nagłówka u góry okna czatu. |
.fibly-header-title | Tytuł okna czatu w nagłówku. |
.fibly-avatar | Ikona lub awatar w nagłówku. |
.fibly-header-actions | Grupa przycisków po prawej stronie nagłówka. |
.fibly-messages | Przewijany obszar z rozmową. |
.fibly-message | Każdy wiersz wiadomości w rozmowie. |
.fibly-message--bot | Wiadomość od bota. |
.fibly-message--customer | Wiadomość od odwiedzającego. |
.fibly-message--agent | Wiadomość od członka Twojego zespołu. |
.fibly-message--event | Zdarzenie w rozmowie, np. dołączenie członka zespołu, wyświetlane jako wyśrodkowany tekst. |
.fibly-bubble | Dymek z treścią wiadomości bota, odwiedzającego lub zespołu. |
.fibly-typing | Wskaźnik widoczny, gdy odpowiedź jest w trakcie pisania. |
.fibly-composer | Obszar u dołu z polem wiadomości i przyciskiem wysyłania. |
.fibly-input | Pole wiadomości. |
.fibly-send | Przycisk wysyłania. |
.fibly-footer | Linia „Powered by Fibly AI”. Nie jest wyświetlana, gdy stopka jest ukryta. |
.fibly-alert | Każdy komunikat wyświetlany w rozmowie. |
.fibly-welcome-notice | Komunikat powitalny ustawiony w Ustawieniach widgetu, wyświetlany na początku każdej rozmowy. |
.fibly-alert-box | Kolorowe pole komunikatu z ikoną i treścią. |
.fibly-alert--info | Pole komunikatu informacyjnego. |
.fibly-alert--warning | Pole ostrzeżenia. |
.fibly-sales-popup | Dymek, który może pojawić się obok zwiniętego przycisku czatu. |
Niektóre elementy mają więcej niż jedną klasę:
- Wskaźnik pisania jest wyświetlany jako wiadomość bota, więc oprócz
.fibly-typingma też klasę.fibly-message--bot. Reguła dla.fibly-message--botzmieni więc także wskaźnik pisania. Aby go pominąć, użyj.fibly-message--bot:not(.fibly-typing). - Komunikat powitalny jest jednocześnie komunikatem, więc ma klasy
.fibly-welcome-noticei.fibly-alert. Pozostałe komunikaty mają tylko klasę.fibly-alert, nawet jeśli pojawiają się przed pierwszą wiadomością odwiedzającego. W rozmowach rozpoczętych przed wprowadzeniem tej klasy komunikat powitalny ma tylko.fibly-alert.
Zmienne
Kolory, zaokrąglenia i cienie są zdefiniowane jako zmienne CSS. Zmiana zmiennej jest często prostsza niż nadpisywanie pojedynczych reguł, bo zmienia od razu wszystkie elementy, które z niej korzystają. Poniższe wartości domyślne pochodzą z motywu Domyślny; inne motywy zmieniają część z nich.
| Zmienna | Za co odpowiada | Wartość domyślna |
|---|---|---|
--fibly-font | Krój pisma wszystkich tekstów w widgecie. | czcionka systemowa |
--fibly-surface | Tło okna czatu. | #ffffff |
--fibly-panel-bg | Tło obszaru rozmowy i stopki. | #f9fafb |
--fibly-header-bg | Tło nagłówka. | Twój kolor główny |
--fibly-header-text | Tekst i ikony w nagłówku. | Twój kolor tekstu na tle głównym |
--fibly-bot-bubble-bg | Tło wiadomości bota i zespołu. | #ffffff |
--fibly-bot-bubble-text | Tekst wiadomości bota i zespołu. | #374151 |
--fibly-bot-bubble-border | Obramowanie wiadomości bota i zespołu. | #f3f4f6 |
--fibly-customer-bubble-bg | Tło wiadomości odwiedzającego. | Twój kolor główny |
--fibly-customer-bubble-text | Tekst wiadomości odwiedzającego. | Twój kolor tekstu na tle głównym |
--fibly-input-bg | Tło pola wiadomości. | transparent |
--fibly-input-text | Tekst w polu wiadomości. | inherit |
--fibly-link | Linki w wiadomościach. | blue |
--fibly-muted-text | Tekst pomocniczy, np. stopka i zdarzenia w rozmowie. | #9ca3af |
--fibly-border-color | Obramowanie okna czatu oraz linie nad i pod polem wiadomości. | #e5e7eb |
--fibly-border-width | Grubość obramowania okna czatu. | 1px |
--fibly-radius | Zaokrąglenie rogów okna czatu. | 8px |
--fibly-bubble-radius | Zaokrąglenie rogów dymków wiadomości. | 8px |
--fibly-control-radius | Zaokrąglenie rogów pola wiadomości i przycisku wysyłania. | 6px |
--fibly-launcher-radius | Zaokrąglenie rogów przycisku czatu. Domyślnie nieustawione: przycisk z tekstem ma wtedy lekko zaokrąglone rogi, a przycisk z samą ikoną jest okrągły. Ustawiona wartość działa w obu przypadkach. | nieustawione |
--fibly-shadow | Cień okna czatu. | duży, delikatny cień |
--fibly-bubble-shadow | Cień dymków wiadomości. | bardzo lekki cień |
--fibly-launcher-shadow | Cień przycisku czatu. | delikatny cień |
--fibly-alert-info-bg | Tło komunikatów informacyjnych. | #eff6ff |
--fibly-alert-info-border | Obramowanie komunikatów informacyjnych. | #bfdbfe |
--fibly-alert-info-text | Tekst i ikona komunikatów informacyjnych. | #1d4ed8 |
--fibly-alert-warning-bg | Tło ostrzeżeń. | #fffbeb |
--fibly-alert-warning-border | Obramowanie ostrzeżeń. | #fde68a |
--fibly-alert-warning-text | Tekst i ikona ostrzeżeń. | #b45309 |
--fibly-alert-radius | Zaokrąglenie narożników komunikatów. | takie samo jak --fibly-bubble-radius |
--fibly-alert-border-width | Grubość obramowania komunikatów. | 1px |
--fibly-alert-shadow | Cień komunikatów. | none |
Ustawiaj zmienne na .fibly-root, aby zmienić je w całym widgecie.
Wartość ustawiona w tym miejscu wygrywa z motywem i z kolorami
zaawansowanymi. Aby zmienić zmienną tylko w jednym miejscu, ustaw ją na
konkretnym elemencie, np. na .fibly-panel dla okna czatu albo na
.fibly-launcher dla przycisku czatu.
Przykłady
Większy tytuł w nagłówku
.fibly-header-title {
font-size: 18px;
font-weight: 600;
}
Kwadratowe dymki wiadomości
.fibly-root {
--fibly-bubble-radius: 0;
}
Ta reguła zmienia jednocześnie dymki bota, odwiedzającego i Twojego zespołu. Aby wyprostować rogi tylko w wiadomościach odwiedzającego, wskaż je bezpośrednio:
.fibly-message--customer .fibly-bubble {
border-radius: 0;
}
Własny kolor linków
.fibly-root {
--fibly-link: #0b7a53;
}
Jeśli chcesz zmienić tylko kolor linków, pole Linki w sekcji Kolory zaawansowane zrobi to samo bez pisania CSS.
Stałe nazwy klas i zmiennych
Klasy i zmienne wymienione na tej stronie są stałą częścią widgetu i dbamy o to, by działały także po jego aktualizacjach. Jeśli kiedyś będziemy musieli zmienić nazwę którejś z nich lub ją usunąć, uprzedzimy o tym z wyprzedzeniem, abyś miał czas dostosować swój CSS. Inne nazwy klas widoczne w źródle strony są wewnętrzne i mogą się zmienić bez zapowiedzi, więc nie opieraj na nich swoich stylów.
Po zmianie planu
Jeśli przejdziesz na plan bez poziomu Zaawansowana, Twój CSS zostanie zapisany, ale nie będzie stosowany na stronie. Wróci, gdy tylko przejdziesz z powrotem na plan, który go obejmuje.