You actually asked what causes it and I've not seen that addressed yet. First, let's cover what stops it. Flat tappet camshaft lobes are ground with a taper. If you look at a used one, you can see where the lifters have ridden on the lobes. It's not in the center. That's because of the taper. This taper does two things. First, that taper engages with the convex face of the lifter and makes it spin in the lifter bore so the lifter will not wear out in short order. It's a normal reaction for the camshaft to be pushed forward in the camshaft bore because of the intermediate gear meshing with the camshaft gear. So that action has to be countered with something. That taper is it. The taper also keeps the camshaft from walking forward.
Now we come to roller camshafts. You guessed it. They have no taper, since the rollers on the lifters must sit squarely on the camshaft lobes. With no taper, the camshaft is free to walk forward, so "something" must be used to keep it in check. That's where camshaft buttons come into play. The factories mostly all use a camshaft thrust plate, I believe. In our pre roller camshaft engines, we have to find another way and the camshaft button is it.