static _skipTransitions(elements, callback) {
    const zero = '0ms';

    // Save current duration and delay.
    const data = elements.map((element) => {
      const { style } = element;
      const duration = style.transitionDuration;
      const delay = style.transitionDelay;

      // Set the duration to zero so it happens immediately
      style.transitionDuration = zero;
      style.transitionDelay = zero;

      return {
        duration,
        delay,
      };
    });

    callback();

    // Cause forced synchronous layout.
    elements[0].offsetWidth; // eslint-disable-line no-unused-expressions

    // Put the duration back
    elements.forEach((element, i) => {
      element.style.transitionDuration = data[i].duration;
      element.style.transitionDelay = data[i].delay;
    });
  }
Change a property or execute a function which will not have a transition
@param {Element[]} elements DOM elements that won't be transitioned.
@param {function} callback A function which will be called while transition
    is set to 0ms.
@private