A brand swoosh behind a word or a short phrase.
Wait and save or get a ride faster
A brand swoosh behind a word or a short phrase.
Wait and save or get a ride faster
Swoosh puts a brand swoosh behind a word or a short phrase — the one accent in a text block. It hugs the text and stretches with it, in any DS text style.
One state — Standard. Swoosh is not interactive; the Figma component stages no State axis. The fill and the text colour are defaults an instance re-points.
The swoosh shape behind Figma's Title• (Mode = Expanded) — the text and its two icon slots, exposed on the instance.
Swoosh is a horizontal auto-layout that hugs its content. The swoosh shape lies behind the text, absolutely positioned, and stretches with the box; the text sits on top of it.
dir="rtl".
Swoosh marks the one word or phrase in a text block — a title, a row — that carries the point — in the text style of the line around it, with var(--sp-s4) or more to its neighbours.
Wait and save or get a ride faster
Offer less if
you’re not in a hurry
Raise a fare
to get more offers
Wait and save or get a ride faster
The text is the content; the swoosh is decoration. Swoosh is not a control and not an element of its own — its text is read as part of the sentence it sits in.
Wait and save or get a ride faster
<span> with no role and no tabindex — the host's sentence is read in one go, with no stop or pause at the Swoosh: "Wait and save or get a ride faster"; in a tariff row, "Economy, 4 seats, 3 minutes, 16 dollars". TalkBack: one Text with the swoosh behind a span, or a merged host node whose contentDescription is the whole sentence — a separate, unmerged Text becomes its own focus stop. VoiceOver: the whole sentence as the host's one accessibilityLabel (children: .combine over separate views can pause), with the host's trait (.isHeader in a title, .isStaticText in a row). Web: a reader that still stops on the span gets the sentence as the host's aria-label. Not <mark> — a brand accent, not a search highlight.
::before with a CSS mask — generated content with no text, never in the tree. TalkBack: drawn behind the text, not a node; VoiceOver: accessibilityHidden(true). The emphasis is visual only — the sentence reads the same without it. In forced colours the background is forced to the system Canvas colour, so the shape blends into the page: the words remain, the accent goes.
aria-hidden="true", TalkBack contentDescription = null, VoiceOver accessibilityHidden(true). A meaningful one ("International") carries role="img" and an aria-label and joins the host's label.