1. tailwind utilities
  2. corner shapes

Corner Shapes

Specifies the shape of a box's corners, within the area specified by its border-radius.

Warning

This feature is currently marked as beta. Take caution when using for production. It may receive breaking changes before its stable release.

Base on the corner-shape CSS property. Pair corner-shape-* with a rounded-* utility on the same element.

round
bevel
notch
scoop
squircle
straight
ClassDescription
corner-shape-roundStandard circular curve (default)
corner-shape-bevelStraight diagonal cut across the corner
corner-shape-notchInverted bevel that carves into the corner
corner-shape-scoopConcave curve that scoops inward
corner-shape-squircleSuperellipse with a softer curve than round
corner-shape-straightSharp 90° corner
corner-shape-noneRemoves any shape property

Browser Support Warning

Currently available in a limited set of browsers. Follow progressive enhancement best practices when using it.

BrowserSupport
Chrome139+
Edge139+
Firefox⚠️ Not yet supported
Safari⚠️ Not yet supported
Chrome for Android147+
Safari on iOS⚠️ Not yet supported

Individual Sides

Target a single physical side; each covers its two adjacent corners.

-t-
-r-
-b-
-l-
ClassDescription
corner-shape-t-*Top side
corner-shape-r-*Right side
corner-shape-b-*Bottom side
corner-shape-l-*Left side

Individual Corners

Target a single physical corner.

-tl-
-tr-
-br-
-bl-
ClassDescription
corner-shape-tl-*Top-left corner
corner-shape-tr-*Top-right corner
corner-shape-br-*Bottom-right corner
corner-shape-bl-*Bottom-left corner

Logical Properties

Target sides and corners that flow with the document’s writing direction. These flip automatically in right-to-left layouts.

-s-
-e-
-ss-
-se-
-ee-
-es-
ClassDescription
corner-shape-s-*Inline-start side
corner-shape-e-*Inline-end side
corner-shape-ss-*Start-start corner
corner-shape-se-*Start-end corner
corner-shape-ee-*End-end corner
corner-shape-es-*End-start corner

Theme Variables

Two utilities consume theme tokens, allowing the active theme to drive the corner shape across your interface.

container
ClassTheme PropertyRole
corner-shape-basevar(--corner-shape-base)Target small elements like buttons
corner-shape-containervar(--corner-shape-container)Target large elements like cards

Using a Custom Value

Use the corner-shape-[<value>] syntax to set the corner shape based on a completely custom value.

html
<div class="corner-shape-[squircle] rounded-2xl ...">
	<!-- ... -->
</div>

For CSS variables, you can also use the corner-shape-(<custom-property>) syntax.

html
<div class="corner-shape-(--my-corner-shape) rounded-2xl ...">
	<!-- ... -->
</div>

This is just a shorthand for corner-shape-[var(<custom-property>)] that adds the var() function for you automatically.

The same [<value>] and (<custom-property>) patterns work for every side, corner, and logical variant — for example corner-shape-tl-[bevel] or corner-shape-s-(--my-corner-shape).

Global Theming

To apply a corner shape across a family of elements, target the class in your global stylesheet and pair it with a matching radius scale. Note this pattern works with any class or element that uses border-radius.

css
.btn,
.btn-icon,
.chip,
.chip-icon,
.badge,
.badge-icon {
	corner-shape: var(--corner-shape-base);
}
css
.card {
	corner-shape: var(--corner-shape-container);
}
View page on GitHub