1. CSS position:sticky

    Keeps elements positioned as "fixed" or "relative" depending on how it appears in the viewport. As a result the element is "stuck" when necessary while scrolling.

  2. css property: position: table elements as `sticky` positioning containers