6.7 Why don’t my customizations of the frame parameters work?

This probably happens because you have set the frame parameters in the variable initial-frame-alist. That variable holds parameters used only for the first frame created when Emacs starts. To customize the parameters of all frames, change the variable default-frame-alist instead.

These two variables exist because many users customize the initial frame in a special way. For example, you could determine the position and size of the initial frame, but would like to control the geometry of the other frames by individually positioning each one of them.