This occurs because the header is docked at the top of #main-outlet
while positioned absolutely and then it changes to position: fixed
and so it “jumps” to the top of the page once you scroll past the top of #main-outlet
.
This is not an issue if you don’t have custom markup added before the main-outlet, but if you do, you get the results you described.
I pushed a small fix to address the issue and the transition will now be like what you see on the Ubuntu community if you add custom markup
https://github.com/discourse/discourse/commit/ac7b05884917c8949ad9690d1e3b63eeb7f6303f