Overview
The shape-outside CSS property defines a shape—which may be non-rectangular—around which adjacent inline content should wrap. By default, inline content wraps around its margin box;
shape-outside provides a way to customize this wrapping, making it possible to wrap text around complex objects rather than simple boxes.
<div class="">The shape-image-threshold CSS property sets the alpha channel threshold used to extract the shape using an image as the value for shape-outside.
Any pixels whose alpha component's value is greater than the threshold are considered to be part of the shape for the purposes of determining its boundaries.
For example, a value of 0.5 means that the shape will enclose all the pixels that are more than 50% opaque.
<div>
<p class="mt:0">
The shape-image-threshold CSS property sets the alpha channel threshold used to extract the shape using an image as the value for shape-outside.
</p>
<div class="shape-outside:none
clip-outside:none
flex float:left w:240 h:120
bg:url('/images/logo.svg')|no-repeat|top|left/contain
shape-outside:url('/images/logo.svg')
shape-image-threshold:0.5 shape:25">
</div>
<p class="mt:0">
Any pixels whose alpha component's value is greater than the threshold are considered to be part of the shape for the purposes of determining its boundaries.<br>
For example, a value of 0.5 means that the shape will enclose all the pixels that are more than 50% opaque.
</p>
</div>Applying with functions
<div class="shape-outside:$(value)">...</div>Master supports native CSS variables and functions, just add var(--key) or use shorthand$(key) for variables.
You can also use calc(expression), env(expression) and other CSS functions if the property supports it.
To learn more, see the Functions documentation.
Conditionally apply
States and selectors
<div class="shape-outside:inset(0|20px):hover">...</div>Master supports all native CSS selectors, just add :hover, :disabled, chaining, combinators and other CSS selectors as usual.
To learn more, see the Selectors documentation.
Responsive breakpoints
<div class="shape-outside:inset(0|20px)@sm">...</div>Responsive breakpoints can be applied to all styles. Some available breakpoints are 3xs, 2xs, xs, sm,md, lg, xl, 2xl, 3xl, 4xl. Arbitrary breakpoints can be specified through comparison operators >, >=, <, <=.
To learn more, see the Breakpoints documentation.
Print format and media queries
<div class="shape-outside:inset(0|20px)@print">...</div>Master supports media types like print, screen, speech, all, and other media queries.
To learn more, see the Media Queries documentation.
Dark mode and color schemes
<div class="shape-outside:inset(0|20px)@dark">...</div>Master uses the selector html.dark to support color schemes. Now, you can easily fine-tune your style for the color schemes.
To learn more, see the Color Schemes documentation.