Skip to the page
Tactile UI

Kit part · Lit surfaces

Brushed metal

A brushed metal surface under a raking light. The grain runs one way, as if drawn with a wire brush, and a soft sheen crosses it in bands. On a fine pointer the light turns slowly toward the pointer as it crosses the section and settles where you leave off; on touch it rests. Otherwise it is still, so it costs nothing at rest.

Element
<div class="tui-backdrop tui-backdrop--brushed-metal" aria-hidden="true">
Needs
kit.css + kit.mjs
Rules
brushed-metal.rules.md · 6
Finishes
Aluminium · Graphite · Oak · Walnut · Porcelain · Black · Daylight · Night · Paper · Phosphor · E-paper · AMOLED
Volumes
Tactile · Quiet
On this page
  1. Variants
  2. Every state, at once
  3. API
  4. Markup
  5. Accessibility
  6. How it’s built
  7. Rules
  8. Related parts

Seats open in 11 days. Want one email that morning?

Variants

Quay Street studio

Booked until Friday

Two rooms are free on Saturday morning. Hold one for an hour while you decide.

Behind a section · the default
Berth B1Free

Free from Saturday morning.

A panel standing on it
Quay Street studio

Open late

The studio keeps its lamps on until ten.

Square corners: the backdrop follows the host
Quay Street studio

Open late

The studio keeps its lamps on until ten.

The light fixed · data-still

Every state, at once

Both finishes, side by side. Hover, pressed and focus are forced with .is-hover, .is-down and .is-focus; checked and disabled are real.

Aluminium

PartAt restLight turned leftLight turned right
Surface
Quay Street

Booked

Quay Street

Booked

Quay Street

Booked

Graphite

PartAt restLight turned leftLight turned right
Surface
Quay Street

Booked

Quay Street

Booked

Quay Street

Booked

API

NameKindValuesWhat it does
.tui-backdrop-hostclasson the sectionA box that is positioned and makes its own stacking context, so the backdrop stays behind the section’s own content. Any element will do.
div.tui-backdrop[aria-hidden="true"]elementthe first child of the hostThe surface. It fills the host, follows its rounded corners, and takes no pointer events and no focus.
.tui-backdrop--brushed-metalmodifierthe surfaceGrain drawn once and a conic sheen over it. Nothing else is painted, and nothing is drawn again unless the light is leaning.
--bd-turncustom propertyan angleHow far the light has turned. The script sets it as the pointer moves; set it yourself for a fixed angle.
[data-still]attributeon the backdropKeeps the light where it is, whatever the pointer does.
wireBackdrops(root)functionneeds kit.mjsWire the backdrops in root, or in the page. kit.mjs already does this for the page and for what is added to it.
backdropTarget() · backdropStep()functionpureWhere the light should lean for a pointer position, and one frame of easing toward it.

Markup

<!-- The host makes the stacking context; the backdrop is its first child and is hidden from a screen reader. -->
<section class="tui-backdrop-host">
  <div class="tui-backdrop tui-backdrop--brushed-metal" aria-hidden="true"></div>
  <div class="tui-heading">
    <span class="tui-label">Quay Street studio</span>
    <h2 class="tui-h2">Booked until Friday</h2>
  </div>
  <p class="tui-lead">Two rooms are free on Saturday morning.</p>
  <button class="tui-key tui-key--primary" type="button">Hold a room</button>
</section>

<!-- data-still keeps the light where it is. A fixed angle: style="--bd-turn: 12deg". -->
import { wireBackdrops } from '/kit/kit.mjs';

// kit.mjs wires every backdrop on the page, and any added later.
// To wire one inside a container you built yourself:
wireBackdrops(container);

Needs kit.css and kit.mjs. How to install the kit.

Accessibility

  • It is decoration: the element is hidden from a screen reader, never takes focus and never takes the pointer, so the section reads as it would without it.
  • The surface is made from the finish’s own tokens and kept to a narrow range of light, so a heading, a line and a key on top clear 4.5:1 on its lightest and its darkest pixel, in all twelve finishes and both volumes.
  • The light leans only on a fine pointer, and only while motion is allowed. On touch and under reduced motion it stays where it is. It never moves on its own, and nothing flashes.
  • It stops easing the moment it has arrived, and does not run at all while the section is off screen or the tab is hidden.
  • On a phone nothing scrolls sideways: the surface is clipped to its host.

How it’s built

Put class="tui-backdrop-host" on the section and the backdrop first inside it. The backdrop sits behind everything else in the host, so the heading, the line and the key need nothing of their own. The grain is noise stretched along the brushing, drawn once as a tiled background. The sheen is a conic gradient centred far below the plate, so its bands run nearly straight and fan a little, and it is one layer that turns by rotate. The script eases it a few percent a frame, only while the pointer is moving it.

Rules

brushed-metal.rules.mdIn the brain

Lay brushed metal behind a section: a fine grain, a raking light that turns a little as the pointer crosses, and nothing running when it is not.

6 rules in this file, with the foundations they rest on and the anti-patterns that break them. Full rules ship in the brain with the Pass.

Quay Street

Booked

Lamp pool

A warm pool of lamplight on a desk. The desk is the finish’s own, with a fine grain, and a lamp over one corner throws an oval of light that fades to the dim of the room. On a fine pointer the lamp drifts a little toward the pointer, eased. The warmth is the filament lamp’s colour and nothing else: it is not a new colour in the kit.

Grille moiré

Two speaker grilles laid one over the other. Each is a plate drilled with a lattice of round holes; one turns a few degrees and back, and where its holes meet the other’s the dark behind shows through. Those dark spots gather and thin and drift across the surface, the way two real grilles beat against each other. Slow, and held still off screen.

Louvre light

A wall lit from the side, with the shadows of slats across it, as when the sun comes through blinds. The wall and its light are fixed; the slat shadows drift sideways across it very slowly and come back. Their edges are soft, drawn into the gradient rather than blurred, and the whole thing holds still when it is off screen.

Output

Panel

A face plate that groups what belongs together: a head, a rule, then the parts. Screws only on device-like panels.