The default duration is three seconds, counted from the moment the notice appears, not from when anyone started reading. A reader using magnification, a screen reader, a translation layer, or reading at their own pace can miss it, and there is no history and nothing left on screen to go back to.
- pauseOnHover defaults to true, and it is a pointer feature. It does nothing for a keyboard, a screen reader or a touch screen.
- WCAG 2.2.1 wants timed content to be turn-off-able, adjustable or extendable. A three-second message with no control is none of the three on its own, so it has to be the redundant copy of something that stays.
- Where the message is the only copy, give it duration: 0 and close it from your own code on the next meaningful action. A message that outlives its moment is a smaller problem than one that vanishes before it is read.
- Do not shorten a duration to fit more messages in. Lengthening one costs little, and the reader's attention costs more.