formのテキストボックスやボタンがきれいに並ばない(頭が揃わない・ズレる)

フォームのテキストボックス(input type="text")やボタン(input type="button")を横一列で奇麗に並べようと思っても、表示させるブラウザによって位置がズレます

本当は下の画像のようにしたいのに

IE 11やsafariで見ると

このように頭がずれて大変に気持ち悪いです。

これを直す方法は、それぞれの要素に「vertical-align : top;」を指定すれば、きれいに揃います。