This is a critical issue for Safari.
For example. in my testing, Safari is somehow deducing input fields from surrounding dom as well.
When examining why on earth Safari auto-completes a field with my contacts email address I see in the dom:
<tr>
<td valign="top" width="30%"><b>Mail server</b></td>
<td valign="top"><div style="font-size: small"><input size="40" value="127.0.0.1" name="v27115_656" type="text"></div></td>
</tr>
There is no way Safari should be auto completing v27115_656 with an email address unless they have some fuzzy idea that "<td valign="top" width="30%"><b>Mail server</b></td>" is mean't to be 'Email'
They must have put in some *mail* match logic in here to catch all 'mail' like values, not doing it as a normal developer would expect, ie. explicit name='email' or other standard vcard type naming rule.
I have to say, with the non-compliance with autocomplete=off, Safari is about as good as worthless if you want to use some web-based administration system, and still like to use Safari for browsing other websites.
I have posted a bug report, but as usual it's like tearing up paper and throwing the remains into the wind.
I am shaking my head and hope that the browser is given some desperately needed attention in the near future or at least open sourced so we can fix this bug.
Please post a bug on bugreport.apple.com
Safari 8 has all these issues.