A jQuery plugin that makes the height of selected elements exactly equal, with responsive row-aware updates.
jquery.matchHeight is a jQuery plugin that automatically sets the height of selected HTML elements to be equal. It solves the common frontend challenge of creating uniform‑height boxes in grids or rows, especially when content varies in length. The plugin handles responsive updates, row wrapping, and cross‑browser inconsistencies.
Frontend developers and designers building jQuery‑based websites who need reliable equal‑height layouts without complex CSS workarounds.
It provides a simple, battle‑tested solution for equal heights that works in older browsers (IE8+) and handles real‑world complexities like images loading, dynamic content, and responsive rows—where modern CSS alternatives like Flexbox or Grid may not be sufficient.
a responsive equal heights plugin
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Works seamlessly in IE8+ and all modern browsers, correctly accounting for box-sizing, padding, and borders as per the features list, making it a robust choice for legacy support.
Automatically updates element heights on window resize and intelligently matches heights only within the same row for floated or wrapped layouts, ensuring consistent grids across devices.
Allows applying equal heights via simple HTML data attributes (data-mh) without writing any JavaScript, enabling quick implementation as documented in the Data API section.
Includes throttled updates (default 80ms) to prevent performance issues during resize events, balancing smoothness and efficiency as mentioned in the advanced usage.
Does not support CSS transitions or animations on height changes, which can cause unexpected results if such effects are present, a clear limitation admitted in the known limitations.
Requires jQuery as a prerequisite, adding extra overhead and making it unsuitable for projects not using jQuery or those seeking lightweight, framework-agnostic solutions.
Requires manual calls to _update() after any dynamic content changes (e.g., AJAX), which can be error-prone and adds maintenance complexity, as highlighted in the known limitations.