html5 - No input validation message in Opera -
enter not valid email address or text, press ok - opera 22 not display validation error message , form isn't submitting... opera bug or i'm doing wrong?
<form> <input type="email"/> <button type="submit">ok</button> </form>
test here: http://jsfiddle.net/spueg
define mean not valid
e-mail, there pretty counter intuitive regex pattern e-mail validation, according rfc 5321 , rfc 5322.
syntax
the format of email addresses local-part@domain
local-part
may 64 characters long , domain
name may have maximum of 253 characters – maximum of 256-character length of forward or reverse path restricts entire email address no more 254 characters long.
the formal definitions in rfc 5322 (sections 3.2.3 , 3.4.1) , rfc 5321 – more readable form given in informational rfc 3696[3] , associated errata.
local part
the local-part
of email address may use of these ascii
characters. rfc 6531 permits unicode characters beyond ascii range:
- uppercase , lowercase english letters (a–z, a–z) (ascii: 65–90, 97–122)
- digits 0 9 (ascii: 48–57)
- these special characters: ! # $ % & ' * + - / = ? ^ _ ` { | } ~ (limited support)
- character . (dot, period, full stop) (ascii: 46) provided not first or last character, , provided not appear 2 or more times consecutively (e.g. john..doe@example.com not allowed).
- special characters allowed restrictions. are:
space , "(),:;<>@[] (ascii: 32, 34, 40, 41, 44, 58, 59, 60, 62, 64, 91–93)
the restrictions special characters must used when contained between quotation marks, , 2 of them (the backslash \ , quotation mark " (ascii: 92, 34)) must preceded backslash \ (e.g. "\\"").
comments allowed parentheses @ either end of local part; e.g.
john.smith(comment)@example.com
,(comment)john.smith@example.com
both equivalentjohn.smith@example.com
.international characters above u+007f permitted rfc 6531, though mail systems may restrict characters use when assigning local parts.
a quoted string may exist dot separated entity within local-part, or may exist when outermost quotes outermost characters of local-part (e.g. abc."defghi".xyz@example.com
or "abcdefghixyz"@example.com
are allowed. conversely, abc"defghi"xyz@example.com
not; neither abc\"def\"ghi@example.com
).
quoted strings , characters however, not commonly used. rfc 5321 warns "a host expects receive mail should avoid defining mailboxes local-part requires (or uses) quoted-string form".
the local-part
postmaster treated specially–it case-insensitive, , should forwarded domain email administrator. technically other local-parts
case-sensitive, therefore jsmith@example.com
, jsmith@example.com
specify different mailboxes; however, many organizations treat uppercase , lowercase letters equivalent.
most organizations not allow use of many of technically valid special characters. organizations free restrict forms of own email addresses desired, e.g., windows live hotmail, example, allows creation of email addresses using alphanumerics, dot (.), underscore (_) , hyphen (-).[5]
systems send mail must capable of handling outgoing mail valid addresses. contrary relevant standards, defective systems treat legitimate addresses invalid , fail handle mail these addresses. hotmail, example, refuses send mail address containing of following standards-permissible characters: !#$%*/?^
{|}~`.
domain part
the domain name part of email address has conform strict guidelines: must match requirements hostname
, consisting of letters, digits, hyphens , dots. in addition, domain part may ip address literal, surrounded square braces, such jsmith@[192.168.2.1]
, although rarely seen except in email spam.
internationalized domain names (which encoded comply requirements hostname) allow presentation of non-ascii domain parts.
comments allowed in domain part in local part. e.g. john.smith@(comment)example.com
, john.smith@example.com(comment)
equivalent john.smith@example.com
.
examples
valid email addresses
niceandsimple@example.com
very.common@example.com
a.little.lengthy.but.fine@dept.example.com
disposable.style.email.with+symbol@example.com
other.email-with-dash@example.com
invalid email addresses
abc.example.com
(an @ character must separate local , domain parts)
a@b@c@example.com
(only 1 @ allowed outside quotation marks)
a"b(c)d,e:f;g<h>i[j\k]l@example.com
(none of special characters in local part allowed outside quotation marks)
just"not"right@example.com
(quoted strings must dot separated, or element making local-part)
this is"not\allowed@example.com
(spaces, quotes, , backslashes may exist when within quoted strings , preceded backslash)
this\ still\"not\\allowed@example.com
(even if escaped (preceded backslash), spaces, quotes, , backslashes must still contained quotes)
see here details.
Comments
Post a Comment