I find a good way to learn how to catch properly is to clean from the floor and catch in the power position (1/4 front squat), then from that position perform a front squat. This always elimates a beginner's tendency to jump "out" to catch the weight. The feet will come apart slightly, but the hips go back though, you do not want to jump out to catch the bar.
Basically, the pull from the floor is smooth and straight up until the bar reaches about mid thigh and the knees are all but straight, then still smooth, you perform a Romanian Deadlift until upright, at that point there is a slight rebending of the knees and you perform a jump shrug, you rise onto the toes and the momentum from the shrug will carry the bar upwards if you relax the elbows. Once the bar reaches the desired height, for me it is around the belly button, I try to imagine the bar suspended there in mid-air and I pull myself down underneath the bar whipping my elbows around catching/racking the bar.
I always recommend pulling from the floor instead of the hang. Pulling from a hang or pulling off blocks is excellent to address a weakness in your pull at that point, but I advise learning how to squat clean first.
Again, if you're new to cleaning, start with a power clean, pause for a second, and do a front squat without readjusting the feet. This should eliminate the common tendency to jump out to catch the bar.