Element: underflow event

Non-standard: This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

The non-standard underflow event, which is specific to Firefox, is fired when an element is no longer overflowed by its content.

This only works for elements for which overflow is not set to visible.

The counterpart overflow event is fired when overflow occurs.

Bubbles Yes
Cancelable Yes
Interface UIEvent
Event handler property Unknown


<div id="wrapper">
    <div id="child"></div>
<label><input type="checkbox" id="toggle" checked/> Overflow</label>

 #wrapper {
    width: 20px;
    height: 20px;
    background: #000;
    padding: 5px;
    overflow: hidden;

  #child {
    width: 40px;
    height: 40px;
    border: 2px solid grey;
    background: #ccc;

  var wrapper = document.getElementById("wrapper"),
      child = document.getElementById("child"),
      toggle = document.getElementById("toggle");

  wrapper.addEventListener("overflow", function( event ) {
      console.log( event );
  }, false);

  wrapper.addEventListener("underflow", function( event ) {
      console.log( event );
  }, false);

  toggle.addEventListener("change", function( event ) {
      if ( event.target.checked ) {
          child.style.width = "40px";
          child.style.height = "40px";
      } else {
          child.style.width = "10px";
          child.style.height = "10px";

  }, false);


Not part of any specification.

Browser compatibility

BCD tables only load in the browser

See also