It doesn't do anything apart from creating errors in the HTML.
Note that the for attribute of a label refers to an elements id, not its name.
Of course, fixing the HTML won't, on its own, cause your page to render the same in all browsers (referring to your original question). It just means, as I mentioned, that it is more likely to behave the same in different browsers. That is, if there are errors in the HTML, how different browsers might react to these errors cannot be predicted.
This post has been edited by andrewsw: 20 April 2013 - 03:16 PM