Skip to main content
A widget üvegmorf sávként jelenik meg beépített világos és sötét témákkal. A testreszabás három szinten érhető el: propok a gyakori beállításokhoz, CSS-egyéni tulajdonságok a témázáshoz, valamint CSS-osztályfelülírások a teljes körű vezérléshez.
Ezek a stílusbeállítások a ThunderPhoneWidget React-komponens és a ThunderPhone.mount() CDN-metódus által megjelenített előre elkészített widgetre vonatkoznak. Ha teljesen egyéni felhasználói felületre van szüksége, használja inkább a headless hookot.

Témák

A theme prop vezérli a widget színsémáját. A widget gyökére a tp--light vagy tp--dark osztályt alkalmazza:
Mindkét téma az üvegmorf sávdizájnt használja háttérelmosással és visszafogott átlátszósággal.

CSS egyéni tulajdonságok

A widget CSS egyéni tulajdonságokat (változókat) tesz elérhetővé, amelyeket felülírhat a színek módosításához anélkül, hogy az egyes osztályokat érintené. Ezeket a .tp-widget gyökérelemre alkalmazott témaklassz (.tp--light vagy .tp--dark) határozza meg:

Egyéni tulajdonságok felülírása

Állítsa be a kiemelőszínt a primaryColor prop segítségével:
A --tp-accent a primaryColor prop alapján inline stílusként van beállítva, ezért a --tp-accent stíluslapban történő felülírása nem érvényesül. A kiemelőszínt a prop segítségével módosítsa. Minden más egyéni tulajdonság felülírható CSS-ben.
A többi egyéni tulajdonságot CSS-sel írja felül. Használjon kétosztályos szelektort (.tp-widget.tp--light / .tp-widget.tp--dark), hogy a szabálya a stíluslap sorrendjétől függetlenül felülírja az alapértelmezett értékeket meghatározó témaklaszt:

CSS-osztályok

Az összes widgetosztály tp- előtaggal rendelkezik, hogy elkerülje az ütközéseket a meglévő stílusokkal.

Példák

Egyéni kiemelőszín propokon keresztül

A widget arculathoz igazításának legegyszerűbb módja:

Egyéni színek CSS-en keresztül

A teljes színvezérléshez írja felül az egyéni tulajdonságokat. Ne feledje, hogy a kiemelőszín a primaryColor propból származik, nem a CSS-ből:

Egyéni méret

A sáv, a gombok és a szöveg méreteinek módosításával növelheti vagy csökkentheti a widget méretét:

Szövegcímkék elrejtése

A widget teljes szövege a .tp-meta elemben található. Rejtse el teljesen, hogy csak a hullámforma és a gombok maradjanak:
Vagy rejtse el az egyes részeket:
Az üresjárati címke a .tp-name/.tp-sub elemben található, nem a .tp-status elemben — önmagában a .tp-status elrejtése esetén a cím továbbra is látható, amikor a widget üresjáratban van.

Témaspecifikus felülírások

A témaosztály használatával célozzon meg egy adott témát:

Hatókör beállítása className használatával

A React-komponens használatakor adjon át egy className propot, hogy a felülírások egy adott widgetpéldányra vonatkozzanak:
Ezután célozza meg ezt az osztályt a CSS-ben:
Így ugyanazon az oldalon több, eltérő stílusú widgetpéldányt is használhat. Adjon minden példánynak saját kiemelőszínt a primaryColor propján keresztül (a CSS nem írhatja felül a --tp-accent értékét — azt a rendszer inline állítja be).

Teljesen egyéni felhasználói felület

Ha a CSS-felülírások nem elegendők, a headless hook teljes körű irányítást biztosít. Ön biztosítja az összes HTML-t és stílust, míg a useThunderPhone kezeli a hangmunkamenetet. A hook az audioLevelRef értéket is biztosítja hangra reagáló vizualizációk, például hullámformák készítéséhez.
A headless hook a megfelelő választás, ha hangra reagáló animációkra, egyéni elrendezésekre vagy meglévő komponenskönyvtárba való integrációra van szüksége. A CSS-felülírások és az egyéni tulajdonságok gyors témabeállításokhoz jobbak.