CSS Portal

CSS corner-start-end-shape Property

If this site has been useful, we’d love your support! Consider buying us a coffee to keep things going strong!

Description

The corner-start-end-shape property controls the geometric form applied to the logical "start–end" corner of a box - that is, the corner formed where the inline-start edge meets the block-end edge in the current writing mode and direction. Instead of being tied to a physical corner like “top-right”, it follows the flow of content, so the same declaration adapts automatically when writing direction or block orientation changes. Authors use it to create non-rectangular corners (not just circular radii) at that specific logical corner, allowing visually distinct corner styles on different sides of a single box without rewriting rules for each physical corner.

Visually, this property influences how the box’s outer outline is rendered and how its background is painted near that corner. It composes with the other corner-shape longhands to produce asymmetric corners and interacts with border painting - think of it as a shape primitive that determines where borders and backgrounds are clipped or inset at that corner. For comparison, the legacy way to make rounded corners is with border-radius, but logical corner-shape properties let you express those adjustments relative to flow direction and offer a broader palette of geometric forms beyond simple elliptical rounding.

Because the property targets geometry rather than content, it also affects hit testing, event regions, and overflow clipping: pointer targets or visible overflow can change when the corner shape removes or adds area from the box’s visual footprint. It can be animated or transitioned to produce smooth corner-morphing effects, and it can be combined with other graphic techniques such as clip-path to create complex framed or inset designs. In practice, designers use it to craft UI elements that adapt across locales and writing modes while maintaining consistent, intentional corner styling.

Definition

Initial value
round
Applies to
all elements where border-radius can apply
Inherited
no
Computed value
n/a
Animatable
yes
JavaScript syntax
object.style.cornerStartEndShape

Syntax

corner-start-end-shape: <corner-shape>

Values

The property accepts one <corner-shape-value> value. These define the style of the corner shape:

Keyword Values
  • round - The default value. Creates a standard rounded corner (equivalent to traditional border-radius).
  • scoop - Creates an inward-facing curve (concave), making the corner look "bitten" out.
  • bevel - Creates a flat, diagonal cut across the corner (chamfered look).
  • notch - Creates a rectangular step-like cutout at the corner.
  • square - Straight angle corner (no rounding)
  • squircle - Intermediate shape between round and square
Functional Value
  • superellipse(<number>) - Determines corner curvature using a superellipse curve.

    • Larger positive numbers → closer to a square
    • Values around 1 → default/round
    • Negative values → inverted/concave shapes
    • infinity and -infinity are allowed as extremes ([MDN Web Docs][1])
Global CSS Values
  • inherit
  • initial
  • revert
  • revert-layer
  • unset

Example

<div class='demo'>
<h1>corner-start-end-shape - demo</h1>

<div class='cards'>
<div class='card round'>
<p>Round start-end corner</p>
</div>

<div class='card beveled'>
<p>Beveled start-end corner</p>
</div>
</div>
</div>
/* Layout */
body {
    margin: 0;
    font-family: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    background: linear-gradient(180deg, #f7fbff 0%, #eef6ff 100%);
    padding: 40px;
}

.demo {
    width: 100%;
    max-width: 820px;
    text-align: center;
}

h1 {
    margin: 0 0 18px 0;
    font-size: 18px;
    color: #102a43;
}

.cards {
    display: flex;
    gap: 28px;
    justify-content: center;
    align-items: center;
}

/* Card appearance */
.card {
    width: 260px;
    height: 150px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: linear-gradient(135deg, #556fff, #8b6bff);
    border: 2px solid rgba(0, 0, 0, 0.06);
    box-shadow: 0 6px 18px rgba(24, 39, 75, 0.06);
    padding: 16px;
    box-sizing: border-box;
    font-weight: 600;
    letter-spacing: 0.2px;
    border-start-end-radius: 36px;
    corner-start-end-shape: scoop;
}

/* Alternate shape on the second card */
.card.beveled {
    background: linear-gradient(135deg, #ff7b7b, #ffb86b);
    border-start-end-radius: 36px;
    corner-start-end-shape: bevel;
}

Browser Support

The following information will show you the current browser support for the CSS corner-start-end-shape property. Hover over a browser icon to see the version that first introduced support for this CSS property.

This property is supported in some modern browsers, but not all.
Desktop
Chrome
Edge
Firefox
Opera
Safari
Tablets & Mobile
Chrome Android
Firefox Android
Opera Android
Safari iOS
Samsung Internet
Android WebView
-

Last updated by CSSPortal on: 1st January 2026

If this site has been useful, we’d love your support! Consider buying us a coffee to keep things going strong!