Element Resize Detector - Online Monitor Size Changes
Select any element on the test page and monitor its size changes with ResizeObserver. See log of all entries.
UD5 Toolkit
resize Property Demo
Interactive tool to explore how resize works with overflow, writing-mode, and size constraints.
Drag the handle â at the bottomâright corner to resize this element.
The resize CSS property
controls which directions are allowed.
Try different settings below to see how overflow and writing-mode affect behavior.
resize property controls whether and how an element can be resized by the user. It applies to block-level elements and replaced elements (like <textarea>) whose overflow is not visible. Values include none, both, horizontal, vertical, block, and inline. The resize handle appears at the bottomâright corner by default in LTR layouts.
resize property only takes effect when overflow is not visible (the default). This is because resizing changes the element's dimensions, and the browser needs a defined overflow behavior to handle content that may no longer fit. Use overflow: auto, overflow: scroll, or overflow: hidden to enable resizing.
block restricts resizing to the block flow direction, and inline restricts it to the inline direction. These directions depend on the element's writing-mode. With default writing-mode: horizontal-tb, block â vertical and inline â horizontal. With writing-mode: vertical-rl, block becomes horizontal and inline becomes vertical. Try the presets above to see this in action!
resize: none to the textarea. This is one of the most common realâworld uses of the resize property â many developers disable textarea resizing to maintain a consistent layout. You can also use resize: vertical to allow height adjustments only, which is useful for comment boxes.
::-webkit-resizer pseudoâelement to style the handle. However, this is nonâstandard and not supported in Firefox. For crossâbrowser custom resize handles, consider using JavaScriptâbased solutions with custom UI elements instead of relying on the native resize property.
min-width, max-width, min-height, and max-height constraints during resize operations. The user cannot drag the element beyond these boundaries. This is useful for preventing an element from becoming too small to be usable or too large to fit the layout. Adjust the constraint values in the controls above to test this behavior.
resize handles are rendered by the browser and tend to be quite small â often too small for comfortable touch interaction on mobile devices. While the property technically works on mobile, the user experience can be frustrating. For mobileâfirst designs, consider providing alternative sizing controls (like buttons or sliders) or using a JavaScriptâbased custom resize implementation with larger touch targets.
block and inline values were introduced later and are supported in Chrome 118+, Firefox 119+, Safari 17+, and Edge 118+ (all released in late 2023). Older browsers will treat them as resize: none (no resizing). For broad compatibility, stick with both, horizontal, vertical, or none. Check caniuse.com for upâtoâdate support data.
Select any element on the test page and monitor its size changes with ResizeObserver. See log of all entries.
Explore the sizeâcontainer and inlineâsize CSS properties for container queries. Understand containment contexts. Visual guide.
Drag to resize a box and see the Resize Observer callback fire. Get contentRect and borderBoxSize. Learn the API.
Toggle printâspecific styles like removing backgrounds, showing link URLs, and adding page breaks. Generate a complete print stylesheet instantly.
Type a few words and see them rendered at every heading size (h1âh6) with your chosen font. Perfect for design systems.
Add print styles like removing backgrounds, adding page breaks, setting margins. See print preview instantly.
Upload a small image and generate the CSS code for a custom cursor. Test it live on the page. Tiny but useful.
Enter two tire sizes and see a sideâbyâside comparison of diameter, width, and speedometer error. Local math.
Estimate your oneârep max (1RM) from weight and reps. Supports multiple formulas (Epley, Brzycki). Training percentages table.
Add appliances with running and starting watts to estimate needed generator capacity. Prevent overload.
Estimate your oneârep max from weight and reps. Supports Epley, Brzycki, Lombardi formulas. See your strength level.
Find your healthy weight range using multiple medical formulas (Hamwi, Devine, Robinson, Miller). Frame size adjustment included. Instant local computation.
Enter a chemical formula (e.g., H2O, C6H12O6) and calculate its molar mass. Handles parentheses and hydrates. Pure frontend.
Calculate your one-rep max using Epley, Brzycki, Lombardi or O'Conner formulas. Predict maximum lifting capacity and plan progressive overload. 100% local processing.
Paste a raw WebAuthn attestation response (CBOR) and decode its fields: format, authenticator data, and extensions. Debug passkeys locally.
Type a password and see a bar that fills based on estimated bits of entropy. Colorâcoded feedback. No storage.
Create complex linear gradients with any number of color stops, exact angles, and length units. Live preview and CSS code.
Style underlines, overlines, and strike-throughs with colors, wavy styles, and thickness. Modern CSS textâdecoration.
Design a fully styled scrollbar with colors, width, radius, and hover effects. Supports both ::-webkitâscrollbar and Firefox scrollbarâwidth.
Create CSS clamp() values for fluid typography. Enter min and max font sizes and viewport widths. Modern responsive design.
Create CSS maskâimage effects with custom shapes, gradients, and SVGs. Visually see the mask applied to an image. Copy the CSS.
Paste your CSS and sort the properties of each rule alphabetically or by concentric groups. Keep your stylesheets consistent without a build step.
Create a customizable checkerboard or grid background using pure CSS gradients. Adjust cell size and colors. Copy the code.
Upload two images and apply CSS blend modes (multiply, screen, overlay, etc.). See the result and copy the filter CSS. Pure frontend.
Write a media query and instantly see if it matches your current viewport. Width, height, orientation, and more.
Paste your CSS and strip all `!important` declarations in one click. See a list of affected rules. Local tool.
Paste HTML/CSS snippets or enter properties to test how zâindex and stacking contexts interact. Realâtime example.
Adjust margin, border, padding, and content sizes interactively and see the rendered box model. Get the exact CSS. Teach or learn layout.
Design a pure CSS tooltip with custom text, position (top/bottom/left/right), and arrow. Copy the clean code.
Resize and crop an image to a specific aspect ratio (1:1, 16:9âŚ) with automatic fit/cover. Download the perfect image.