A lot of that is due to historical societal reasons. In a society where one gender makes money and the other takes care of kids, I don't know how it could have been any other way.
In today's society, what's fair is for the non-custody parent to help support the children by reimbursing the custody parent. Or in cases of joint custody, the one with higher income reimburses the one with lower income. Which I believe is the way it's done in my state.