Hitting enter in a single text input in a form submits the form. It does this by triggering a click event in some cases.
In Firefox, it seems to trigger a click event on the default submit control of the form, whatever that control is (and an image input can be a default submit control).
In Chrome it does the same, but only if the default submit control has a CSS box (which is why the display:none
matters in Chrome).
Per the spec at http://www.whatwg.org/specs/web-apps/current-work/multipage/association-of-controls-and-forms.html#implicit-submission there should be no dependency on CSS here: the synthetic click activation steps are run no matter what, so Chrome's behavior is definitely wrong.
As for Firefox, the question is whether an image input is a "submit button". http://www.whatwg.org/specs/web-apps/current-work/multipage/states-of-the-type-attribute.html#image-button-state-%28type=image%29 says that in fact it is, so the Firefox behavior is the correct one in this case.
In terms of workarounds, one possible option is to explicitly set form=""
on the image input if you don't want it submitting the form, which will make it not associated with the form and hence not the default submit button for it.