Lines, not fills
Outline play uses thin, confident strokes instead of solid shapes — like a technical drawing or a coloring book before the color. The result is airy and modern, and it makes hover/active states feel meaningful: the line fills in.
Stroked everything
Buttons, cards, chips, and icons are just borders — transparent inside.
Outline type
-webkit-text-stroke draws hollow letters for big, graphic headlines.
Fill on interaction
Hover or focus fills the outline with color — a clear, satisfying state change.
Light & airy
No heavy blocks of color; the page breathes and feels refined.
Outline text
Hollow letters drawn with -webkit-text-stroke and a transparent fill. Mix outlined and solid words for contrast.
.outline-text {
color: transparent;
-webkit-text-stroke: 2px #4338ca; /* the outline */
font-weight: 900;
}
.filled-text { color: #4338ca; -webkit-text-stroke: 2px #4338ca; } /* solid for contrast */
Outline buttons
Transparent with a 2px border, they fill with color on hover — the signature line-art interaction. Hover them:
.btn {
background: transparent;
border: 2px solid #4338ca;
color: #4338ca;
transition: all .2s;
}
.btn:hover { background: #4338ca; color: #fff; } /* fill on hover */
Outline card, chips & divider
A line-drawn card with an outlined icon box, hollow chips, and a labelled rule — all strokes, no fills.
.card { background: transparent; border: 2px solid #4338ca; border-radius: 16px; }
.icon-box { border: 2px solid #4338ca; border-radius: 12px; } /* hollow icon frame */
.chip { border: 1.5px solid #4338ca; border-radius: 999px; } /* outline chip */
/* a labelled rule */
.divider { display: flex; align-items: center; gap: 14px; }
.divider::before, .divider::after { content: ''; flex: 1; height: 2px; background: #4338ca; }
-webkit-text-stroke works in all modern browsers but isn't fully standard — keep outline text at large sizes (small outlined text is hard to read) and make sure the fill state has enough contrast.Do & don't
Do
- Keep stroke widths consistent
- Fill outlines on hover/focus
- Use outline text only at large sizes
- Pair with lots of whitespace
- Use outline (line-weight) icons to match
Don't
- Set body paragraphs in outline text
- Mix five different border widths
- Forget a clear focus state for keyboards
- Use low-contrast outline colors
- Mix filled and outline icons randomly
The takeaway
Outline play = strokes instead of fills — border for shapes,
-webkit-text-stroke for hollow type, line-weight icons, and a satisfying fill-on-hover.
Keep strokes consistent, type large, and give it room to breathe.