text‑wrap: balance Playground - Online Beautiful Typography
Apply text‑wrap: balance to headings and paragraphs. See the visual difference and copy the CSS. Avoid orphans.
UD5 Toolkit
.your-text {
text-emphasis: dot #e74c3c;
text-emphasis-position: over;
}
text-emphasis is shorthand for text-emphasis-style and text-emphasis-color.
Position is a separate property.
dot (filled dot), circle (open circle), double-circle, triangle, and sesame (a small sesame-seed shape). You can also prefix them with filled or open (e.g., filled triangle, open dot). For custom marks, use a quoted string like '★', '♥', or '◆'. The string typically works best with a single character, though multi-character strings are technically valid (browsers may only use the first character).
text-emphasis-position controls whether marks appear over (above) or under (below) the text in horizontal writing modes. In vertical writing modes (like traditional Japanese or Chinese), you can also use left or right. The default is over for horizontal text. Note that this property is not included in the text-emphasis shorthand — it must be declared separately.
text-emphasis-skip controls which characters don't receive emphasis marks. By default, browsers skip spaces and punctuation (spaces punctuation). You can change this to none (marks on every character), spaces (skip only spaces), or punctuation (skip only punctuation). Browser support: Chrome 108+, Firefox 121+, Safari 17.2+, Edge 108+. It's a progressive enhancement — if unsupported, the browser simply uses the default skip behavior.
text-emphasis-color smoothly with CSS transitions or @keyframes. For example, you can create a pulsing emphasis effect by animating the color. However, text-emphasis-style is not animatable — you can't smoothly transition between a dot and a star. For dynamic style changes, use JavaScript to swap the value instantly. A common trick is to animate the color while keeping the style fixed, creating an engaging attention-grabbing effect.
'●' (filled bullet) instead of a dot. You can also use this playground's dark background toggle to preview how your emphasis marks look in different themes. For maximum visibility, pair warm colors (red, orange, gold) with light backgrounds, and bright colors (cyan, lime, white) with dark backgrounds.
Apply text‑wrap: balance to headings and paragraphs. See the visual difference and copy the CSS. Avoid orphans.
Choose a property, duration, and bezier curve. Trigger the transition and see the animation. Copy the complete CSS rule.
Turn your message into a scenic mountain emoji art panel. Choose different landscapes. Copy and paste anywhere.
Set a short timer with a themed emoji animation (e.g., pizza cooking). A playful visual countdown.
Explore the new two‑value display syntax like `display: block flex`. See what each inner/outer pair does visually.
Type any condition and see the result of the ternary operator. Understand truthy/falsy values. Quick learning tool.
Select an emoji that matches your mood and log it to a simple calendar. Self‑awareness tool. Local only.
Design a button or card that glows on hover. Adjust shadow color, spread, and transition. Copy the CSS. Rich UI.
Use the abs() and sign() CSS functions to create interesting layouts. See computed values live. Cutting‑edge CSS.
Create a glowing or rotating border animation around an element. Copy the CSS keyframes. Pure CSS magic.
Paste text and see a sorted count of all emojis used. Find your most‑used emoji. Fun analytics. All local.
Track daily mood with emoji selection and optional notes. See weekly/monthly mood trends in a color-coded chart. All data stored privately in localStorage.
Type any CSS selector with :hover/:active/:focus and see the styles applied live. Perfect for debugging interaction states.
Apply an emboss filter to your photo. Choose direction and depth. Gives a 3D carved stone look. Pure canvas.
Create the iPhone Dynamic Island look‑alike with a pill that expands on hover. Pure CSS. Copy the playful code.
Transliterate English letters into Elder Futhark runes. Fun for tattoos and fantasy. One‑to‑one mapping.
Add recurring bills with amounts and see a monthly calendar with due date indicators. Simple finance organizer.
The original arcade Pong recreated in HTML5. Play against AI or local two‑player. Score up to 11 and win. Pure retro fun.
Create a zoom lens effect for product images. Move the cursor to magnify. Copy the HTML/CSS/JS code.
Get a random, lighthearted daily horoscope based on your zodiac sign. For entertainment only. No personal data collected.
Paste your CSS and see a static fallback version where var() is replaced with the default value. For legacy support.
Generate a hash showing how trackers can fingerprint your browser (canvas, WebGL, fonts). Educational and privacy‑aware.
Enter task names, start dates, and durations to generate a simple Gantt chart as an image. Quick project view.
Preview the Gravatar image associated with any email address. Generate the correct Gravatar URL. Handy for avatar debugging.
Plan insulin or other injection sites with a visual body map and date log. Prevent lipohypertrophy.
Write a private gratitude entry guided by daily reflective prompts. All entries stored only in your browser with optional export as text file. No account needed.
Upload two portraits and create a simple morph animation between them. Download as GIF. Local canvas magic.
Write and store encrypted daily journal entries directly in your browser's localStorage. Export as TXT. No sign-up, fully private.
Get a humorous, randomly generated daily horoscope for any zodiac sign. Not real astrology; purely for laughs.
Issue and redeem Private State Tokens (formerly Trust Tokens). Understand how they help detect bots without cookies.