My hack — tested in Chrome 48:
Since Chrome tries to find out the type of field it is by looking at stuff like id
or name
attributes of the <input>
, but also at associated <label>
content, you just have to find meaningless names for these.
For the id
and name
, it's easy to choose something else that is not listed here.
For the label
, I inserted an invisible <span>
in the middle, e.g. for a city (it's messing with my Places autocomplete):
<span>Ci<span style="display:none">*</span>ty</span>
Full working example:
<!DOCTYPE html>_x000D_
<html>_x000D_
<body>_x000D_
<form method="post" action="/register">_x000D_
<div>_x000D_
<label for="name">Name</label>_x000D_
<input id="name" type="text" name="name" />_x000D_
</div>_x000D_
<div>_x000D_
<label for="email">Email</label>_x000D_
<input id="email" type="text" name="email" />_x000D_
</div>_x000D_
<div>_x000D_
<label for="id1">City</label>_x000D_
<input id="id1" type="text" name="id1" /> <-- STILL ON :(_x000D_
</div>_x000D_
<div>_x000D_
<label for="id2">Ci<span style="display:none">*</span>ty</label>_x000D_
<input id="id2" type="text" name="id2" /> <-- NOW OFF :)_x000D_
</div>_x000D_
</form>_x000D_
</body>_x000D_
</html>
_x000D_