下記のログインフォームで、IDをメールアドレスとして input type="email" とするとメールアドレス入力欄となりスマホなどではUIが良くなるのですが、submitする際にHTMLでもバリデーションが行われるので、エラーだった場合はsubmitされません。

<form action="/login" method="post" accept-charset="utf-8">
    <input type="email" name="data[User][id]" />
    <input type="password" name="data[User][pass]" />
    <button type="submit">ログイン</button>
</form>

概ねのシステムはサーバーサイド(PHP)で入力値のチェックを行うので、ブラウザ(HTML)側ではバリデーションチェックを行わなくても良いかもしれません。

その場合、CakePHP(2系)のFormヘルパーでformタグを出力しているとどう記述するのか、調べてみたところ下記の要領でした。

<?php
echo $this->Form->create(
	null,
	array(
		'url' => array( 'controller' => 'login' ),
		'novalidate' => true
	)
);

 ・・・・・

echo $this->Form->end();