CSS min/max width and height work in Chrome 4+, Edge 12+, Firefox 3+, Safari 2+, Opera 4+, Samsung Internet 1+, and IE 7+. Learn the values and known issues.

Prince Dewani
May 1, 2026
CSS min-width, max-width, min-height, and max-height are CSS 2.1 properties that bound an element between a minimum and a maximum size. They work in Chrome 4+, Edge 12+, Firefox 3+, Safari 2+, Opera 4+, Samsung Internet 1+, Android Browser 2.1+, and Internet Explorer 7+, while IE 5.5 and 6 do not support them.
This guide covers what these properties are, the browsers that support them, the accepted values, the difference between min-width and max-width, and the known issues.
CSS min-width, max-width, min-height, and max-height are sizing properties from the W3C CSS 2.1 specification. They set lower and upper bounds on the used width and height of a box. The minimum bounds win over width and height; the maximum bounds cap them.
CSS min/max width and height has near-universal browser support. Every shipping desktop and mobile browser supports the four properties by default, and global usage on caniuse sits at around 97 percent.
Chrome supports all four properties by default from Chrome 4 on Windows, macOS, Linux, ChromeOS, and Android. Length and percentage values have shipped since the first stable Chromium release. Chrome 46 added the intrinsic sizing keywords min-content, max-content, and fit-content on min-width and max-width, and Chrome 79 added them to min-height and max-height.
Microsoft Edge supports all four properties by default from Edge 12 on Windows, macOS, and Linux. Legacy EdgeHTML 12 to 18 supported length, percentage, and auto values. Chromium-based Edge from Edge 79 picks up min-content, max-content, and fit-content on every property and stays in lockstep with Chrome.
Firefox supports all four properties by default from Firefox 3 on Windows, macOS, Linux, and Android. Length, percentage, auto, and none values have shipped since the early Gecko releases. Firefox 66 added the intrinsic sizing keywords min-content, max-content, and fit-content on width, min-width, and max-width across desktop and Android.
Safari supports min-width, max-width, min-height, and max-height by default from Safari 2 on macOS and from Safari 1 on iOS. Length, percentage, auto, and none values have shipped on every WebKit release since. Safari 12.1 added the intrinsic sizing keywords min-content, max-content, and fit-content across both macOS and iOS.
Opera supports all four properties by default from Opera 4 on desktop and from Opera Mobile 10. Opera Mini supports them on every version through the server-side Presto rendering pipeline. Opera 33 on the Blink engine added the intrinsic sizing keywords on min-width and max-width, matching Chrome on the same Chromium base.
Samsung Internet supports the four properties by default from Samsung Internet 1 on Galaxy phones and tablets. The browser shares the underlying Chromium engine with Chrome on Android, so it picks up min-content, max-content, and fit-content from Samsung Internet 5 once the device updates to a build based on Chromium 46 or later.
Chrome for Android supports all four properties by default from Chrome 18 on Android, and the legacy Android Browser supports them from Android Browser 2.1 on Eclair. Modern Android WebView inherits the Chromium engine, so embedded apps pick up the intrinsic sizing keywords as the system WebView refreshes.
Internet Explorer 7 through 11 support all four properties with length, percentage, auto, and none values. Internet Explorer 5.5 and 6 do not support min-width, max-width, min-height, or max-height by default; pages that still target those legacy versions need a CSS expression or a JavaScript polyfill. IE never added the intrinsic sizing keywords. Microsoft has retired Internet Explorer, so users on Windows should switch to Microsoft Edge.
Note: CSS min/max width and height behaves differently across flex, grid, and legacy IE engines. Test it on real browsers and OS with TestMu AI. Try TestMu AI free!
All four properties accept the same value types. The initial value is auto for min-width and min-height, and none for max-width and max-height.
min-width sets the smallest size an element can shrink to. max-width sets the largest size it can grow to. The two properties bound the used width from below and from above, and the same logic applies to min-height and max-height on the block axis.
The four properties ship in every modern browser, but the way they interact with flex, grid, percentages, and legacy engines still trips up production layouts.
In my experience, the failure that bites teams the most is the missing min-width: 0 on flex children, where a card with overflow: hidden and a long heading still pushes the entire flex row out past the viewport because the heading lives inside an item that silently keeps its content-size minimum. Adding min-width: 0 to the flex item, not to the card, is the fix.
All CSS min/max width and height version numbers and platform notes in this guide come from these primary sources:
Did you find this page helpful?
More Related Hubs
TestMu AI forEnterprise
Get access to solutions built on Enterprise
grade security, privacy, & compliance