Baseline Widely available
"email"
ç±»åç <input>
å
ç´ è½å¤è®©ç¨æ·è¾å
¥æç¼è¾ä¸ä¸ªçµåé®ç®±å°åï¼å¦ææå®äº multiple
屿§ï¼åå¯ä»¥è¾å
¥å¤ä¸ªçµåé®ç®±å°åã
<label for="email">Enter your example.com email:</label>
<input type="email" id="email" pattern=".+@example\.com" size="30" required />
label {
display: block;
font:
1rem "Fira Sans",
sans-serif;
}
input,
label {
margin: 0.4rem 0;
}
å¨è¡¨åæäº¤åï¼è¾å
¥æ¡ä¼èªå¨éªè¯è¾å
¥å¼æ¯å¦æ¯ä¸ä¸ªæå¤ä¸ªåæ³ççµåé®ç®±å°åï¼é空å¼ä¸ç¬¦åçµåé®ç®±å°åæ ¼å¼ï¼ãCSS 伪æ ç¾ :valid
å :invalid
è½å¤å¨æ ¡éªåèªå¨åºç¨ï¼ä»£è¡¨è¢«æ ¡éªçé®ç®±å°åæ¯å¦åæ³ã
<input>
å
ç´ ç value
屿§å
å«ä¼èªå¨éªè¯æ¯å¦ä¸ºæ£ç¡®é®ä»¶å°åå½¢å¼çå符串ãå
·ä½æ¥è¯´ï¼æ¤å¤æä¸ç§æ ¼å¼å¯ä»¥éè¿éªè¯ï¼
username@domain
æè
username@domain.tld
ï¼å½ç¶å¹¶ä¸å±éäºæ¤ï¼å
³äºå¹é
çµåé®ä»¶å°åéªè¯ç®æ³çæ£å表达å¼ï¼åè§éªè¯ä¸èãmultiple
屿§æ¶ï¼å¼å¯ä»¥æ¯ä¸ä¸ªå表ï¼è¯¥å表å
å«ä¸ä¸²ç¬¦åæ ¼å¼ççµåé®ä»¶å°åï¼ä¸æ¯ä¸ªå°åä¹é´ç¨éå·åéãå表ä¸ï¼ä½äºæ¯ä¸ªå°åä¹ååä¹åçä»»ä½ç©ºç½å符é½ä¼è¢«ç§»é¤ãå ³äºå¦ä½éªè¯çµåé®ä»¶å°å以ä¿è¯å ¶æ ¼å¼æ£ç¡®çç»èï¼åè§éªè¯ä¸èã
é¢å¤å±æ§é¤äºææ <input>
å
ç´ æ¯æç屿§ä»¥å¤ï¼email
è¾å
¥è¿æ¯æä»¥ä¸å±æ§ï¼
list 屿§æå®äºä¸ä¸ª <datalist>
å
ç´ ç id
ï¼ç¨æ¥æä¾è¾å
¥å»ºè®®ã<datalist>
æä¾äºä¸ä¸ªé¢å®ä¹çå¼å表ï¼åç¨æ·å»ºè®®è¿ä¸ªè¾å
¥ãå表ä¸ä»»ä½ä¸ type
ä¸å
¼å®¹çå¼é½ä¸å
æ¬å¨å»ºè®®é项ä¸ãææä¾ç弿¯å»ºè®®ï¼ä¸æ¯è¦æ±ï¼ç¨æ·å¯ä»¥ä»è¿ä¸ªé¢å®ä¹çå表ä¸éæ©ï¼æè
æä¾ä¸åçå¼ã
ç¨æ·å¯ä»¥è¾å
¥å° email
è¾å
¥æ¡ä¸çæå¤§å符æ°ï¼ä»¥ UTF-16 代ç åå
为åä½ï¼ãå¿
须为大äºçäº 0 çæ´æ°ãå¦ææªæå® maxlength
ææå®äºæ æçå¼ï¼å email
è¾å
¥æ¡å°æ²¡ææå¤§é¿åº¦ãè¿ä¸ªå¼ä¹å¿
须大äºçäº minlength
çå¼ã
å¦æææ¬æ¡ä¸çå符æ°å¤§äº maxlength
UTF-16 ç¼ç åå
é¿åº¦ï¼åè¾å
¥å°æ æ³éè¿çº¦æéªè¯ã约æéªè¯ä»
ä½ç¨äºç¨æ·ä¿®æ¹è¾å
¥å¼çæ¶åã
ç¨æ·å¯ä»¥è¾å
¥å° email
è¾å
¥æ¡ä¸çæå°å符æ°ï¼ä»¥ UTF-16 代ç åå
为åä½ï¼ã该å¼å¿
é¡»æ¯å°äºçäº maxlength
æå®çå¼çéè´æ´æ°å¼ãå¦ææªæå® minlength
ææå®äºæ æçå¼ï¼å email
è¾å
¥å°æ²¡ææå°é¿åº¦ã
妿è¾å
¥å°å段ä¸çææ¬çé¿åº¦å°äº minlength
UTF-16 代ç åå
çé¿åº¦ï¼åè¾å
¥å°æ æ³éè¿çº¦æéªè¯ã约æéªè¯ä»
ä½ç¨äºç¨æ·ä¿®æ¹è¾å
¥å¼çæ¶åã
ä¸ä¸ªå¸å°å±æ§ï¼å¦æåå¨ï¼ä»£è¡¨ç¨æ·å¯ä»¥è¾å ¥å¤ä¸ªç±éå·åå¯é空ç½å符åå¼ççµåé®ä»¶å°åãåè§ç¤ºä¾å 许å¤ä¸ªé®ä»¶å°åï¼æ HTML 屿§ï¼multiple 䏿以è·åæ´å¤ä¿¡æ¯ã
夿³¨ï¼ ä¸è¬å°ï¼å¦æä½ æå®äº required
屿§ï¼é£ä¹ç¨æ·å°å¿
é¡»è¾å
¥ä¸ä¸ªåæ³çé®ä»¶å°åãç¶èï¼å¦æä½ æ·»å äº multiple
屿§ï¼ä¸ç³»åé¶å°åï¼ä¸ä¸ªç©ºåç¬¦ä¸²ï¼æå®å
¨ä¸ºç©ºç½å符çå符串ï¼ä¹æ¯åæ³çãä¹å°±æ¯è¯´ï¼å½æå®äº multiple
æ¶ï¼ç¨æ·çè³ä¸éè¦è¾å
¥ä¸ä¸ªé®ä»¶å°åï¼æ 论æ¯å¦æå®äº required
ã
妿æå®äº pattern
屿§ï¼ä¸ºäºä½¿ value
éè¿çº¦æéªè¯ï¼å¿
é¡»æ»¡è¶³è¯¥å±æ§ç»å®çæ£å表达å¼ãå®å¿
é¡»æ¯ RegExp
ç±»åçææ JavaScript æ£å表达å¼ï¼å¹¶ä¸å·²å¨æä»¬çæ£åè¡¨è¾¾å¼æåä¸è¿è¡äºè¯´æï¼å¨ç¼è¯æ£åè¡¨è¾¾å¼æ¶æå®äº 'u'
æ å¿ï¼å æ¤è¯¥æ¨¡å¼è¢«è§ä¸º Unicode 代ç ç¹çåºåï¼è䏿¯ ASCIIãæ¨¡å¼ææ¬å¨å´æ éæå®æ£ææ ã
å¦ææ²¡ææå®æ¨¡å¼ï¼ææå®äºæ æç模å¼ï¼åä¸ä¼åºç¨ä»»ä½æ£å表达å¼ï¼ä¸è¯¥å±æ§å°è¢«å®å ¨å¿½ç¥ã
夿³¨ï¼ ä½¿ç¨ title
屿§æ¥æå®å¤§å¤æ°æµè§å¨å°ä½ä¸ºå·¥å
·æç¤ºçææ¬ï¼ä»¥è§£éå¹é
该模å¼çè¦æ±æ¯ä»ä¹ãè¿åºè¯¥å¨éè¿å
æ¬å
¶ä»è§£éæ§çææ¬ã
åé æ¨¡å¼éªè¯ä¸è以è·å详ç»è¯´æå示ä¾ã
placeholderplaceholder
屿§æ¯ä¸ä¸ªå符串ï¼å¯åç¨æ·æä¾æå
³è¯¥å段ä¸éè¦ä»ä¹æ ·çä¿¡æ¯çç®çæç¤ºãå®åºè¯¥æ¯ä¸ä¸ªåè¯æçè¯æ¥è¯´æé¢æçæ°æ®ç±»åï¼è䏿¯è¯´ææ§æ¶æ¯ãææ¬ä¸ä¸å¾å
å«åè½¦ç¬¦ææ¢è¡ç¬¦ã
妿æ§ä»¶çå å®¹å ·ææ¹åï¼LTR æ RTLï¼ï¼ä½éè¦ä»¥ç¸åçæ¹åæ¾ç¤ºå ä½ç¬¦ï¼åå¯ä»¥ä½¿ç¨ Unicode ååç®æ³æ¥æ ¼å¼åå符ï¼ä»èè¦çåæå ä½ç¬¦çæ¹åï¼è¯·åè§å¦ä½é对ååææ¬ä½¿ç¨ Unicode æ§å¶ç¬¦è·åæ´å¤ä¿¡æ¯ã
夿³¨ï¼ å°½å¯è½é¿å
ä½¿ç¨ placeholder
屿§ãå®å¨è¯ä¹ä¸æ²¡æå
¶ä»è§£é表åçæ¹å¼æç¨ï¼å¹¶ä¸å¯è½å¯¼è´å
容åºç°æå¤çé®é¢ã请åè§ <input>
æ ç¾ä»¥è·åæ´å¤ä¿¡æ¯ã
ä¸ä¸ªå¸å°å±æ§ï¼å¦æåå¨ï¼åè¡¨ç¤ºè¯¥åæ®µä¸è½ç±ç¨æ·ç¼è¾ã使¯ï¼ä»å¯ä»¥éè¿ JavaScript 代ç ç´æ¥è®¾ç½® HTMLInputElement
ç value
屿§æ¥æ´æ¹ã
夿³¨ï¼ å 为åªè¯»å段ä¸è½æå¼ï¼æä»¥ required
对æå®äº readonly
屿§çè¾å
¥æ²¡æä»»ä½å½±åã
size
屿§æ¯ä¸ä¸ªæ°åå¼ï¼æç¤ºè¾å
¥åæ®µåºæå¤å°ä¸ªå符宽ã该å¼å¿
é¡»æ¯ä¸ä¸ªå¤§äºé¶çæ°åï¼é»è®¤å¼æ¯ 20ãç±äºå符宽度åä¸ç¸åï¼è¿å¯è½æ¯ä¹å¯è½ä¸æ¯ç²¾ç¡®çï¼ä¸åºä¾èµäºæ¤ï¼ç»æè¾å
¥å¯è½æ¯æå®çåç¬¦æ°æ´çªææ´å®½ï¼è¿åå³äºå符ååä½ï¼font
使ç¨ä¸ç设置ï¼ã
è¿å¹¶ä¸éå¶ç¨æ·å¯ä»¥å¨è¯¥å段ä¸è¾å
¥å¤å°ä¸ªå符ï¼ä»
è½æå®ä¸æ¬¡å¯ä»¥çå°å¤å°ä¸ªãè¦è®¾ç½®è¾å
¥æ°æ®é¿åº¦çä¸éï¼è¯·ä½¿ç¨ maxlength
屿§ã
çµåé®ä»¶å°åæ¯ç½ç»ä¸æç»å¸¸è¾å
¥çææ¬æ°æ®å½¢å¼ä¹ä¸ï¼å®ä»¬è¢«ç¨äºç»å½ç½ç«ã请æ±ä¿¡æ¯ãå
许订å确认ãç½ç»é®ä»¶ççãå æ¤ï¼email
è¾å
¥ç±»åå¯ä»¥ä½¿ä½ ä½ä¸ºä¸ä¸ªç½ç»å¼åè
çå·¥ä½å徿´å 容æï¼å 为å®å¯ä»¥å¸®å©ä½ å¨å»ºç«ç¨æ·çé¢åçµåé®ä»¶å°åçé»è¾æ¶ç®åå·¥ä½ãå½ä½ ç¨éå½ç type
å¼å建ä¸ä¸ªçµåé®ä»¶è¾å
¥æ¶ï¼ä½ ä¼å¾å°èªå¨éªè¯ï¼å³è¾å
¥çææ¬è³å°æ¯æ£ç¡®çå½¢å¼ï¼å¯è½æ¯ä¸ä¸ªåæ³ççµåé®ä»¶å°åãè¿å¯ä»¥å¸®å©é¿å
ç¨æ·é误è¾å
¥ä»ä»¬çå°åï¼ææä¾ä¸ä¸ªæ æçå°åã
ç¶èï¼éè¦çæ¯è¦æ³¨æï¼è¿ä¸è¶³ä»¥ç¡®ä¿æå®çææ¬æ¯å®é åå¨ççµåé®ä»¶å°åï¼å¯¹åºäºç«ç¹çç¨æ·ï¼æè 以任ä½å ¶ä»æ¹å¼å¯æ¥åãå®åªæ¯ç¡®ä¿å°å段ç弿£ç¡®æ ¼å¼å为çµåé®ä»¶å°åã
夿³¨ï¼ è®°ä½ç¨æ·å¯ä»¥å¨å¹åä¿®æ¹ HTML ä¹å¾éè¦ï¼å æ¤ä½ çç«ç¹ä¸å¾åºäºä»»ä½å®å ¨ç®çä½¿ç¨æ¤éªè¯ãå¨ä»»ä½äºå¡ä¸ï¼å¦æææä¾çææ¬å¯è½æä»»ä½å½¢å¼çå®å ¨å½±åï¼ä½ å¿ é¡»å¨æå¡å¨ç«¯éªè¯è¯¥çµåé®ä»¶å°åã
ä¸ä¸ªç®åç email è¾å ¥ç®åï¼ææå®ç°æ¤å ç´ çæµè§å¨é½å°å ¶å®ç°ä¸ºå ·æåºæ¬éªè¯åè½çæ åææ¬è¾å ¥å段ã使¯ï¼è¯¥è§èå 许æµè§å¨æä¸å®çèªç±åº¦ãä¾å¦ï¼è¯¥å ç´ å¯ä»¥ä¸ç¨æ·è®¾å¤çå ç½®å°åç°¿éæï¼ä»¥å 许ä»è¯¥åè¡¨ä¸æéçµåé®ä»¶å°åãå¨æåºæ¬çå½¢å¼ä¸ï¼çµåé®ä»¶è¾å ¥å¯ä»¥åè¿æ ·å®ç°ï¼
<input id="emailAddress" type="email" />
请注æï¼å¨ç©ºçæ¶ååè¾å
¥ä¸ä¸ªæææ ¼å¼ççµåé®ä»¶å°åçæ¶åï¼å®è¢«è®¤ä¸ºæ¯ææçï¼ä½å¨å
¶ä»æ
åµä¸ï¼åä¸è¢«è®¤ä¸ºæ¯ææçãéè¿æ·»å required
屿§ï¼åªå
许è¾å
¥æææ ¼å¼ççµåé®ä»¶å°åï¼å½è¾å
¥ä¸ºç©ºæ¶ä¸å被è§ä¸ºææã
éè¿æ·»å multiple
å¸å°å±æ§ï¼è¾å
¥æ¡å¯ä»¥æ¥åå¤ä¸ªé®ä»¶å°åã
<input id="emailAddress" type="email" multiple />
ç°å¨ï¼å½è¾å ¥ä¸ä¸ªçµåé®ä»¶å°åæ¶ï¼æå½ä»»ä½æ°éççµåé®ä»¶å°åç±éå·åéï¼å¹¶å¯éå°å«æç©ºç½å符æ¶ï¼è¾å ¥è¢«è®¤ä¸ºæ¯ææçã
夿³¨ï¼ å½ä½¿ç¨äº multiple
屿§æ¶ï¼å¼å
许为空ã
彿å®äº multiple
屿§æ¶ï¼ä¸äºææå符串示ä¾å¦ä¸ï¼
""
"me@example"
"me@example.org"
"me@example.org,you@example.org"
"me@example.org, you@example.org"
"me@example.org,you@example.org, us@example.org"
ä¸äºæ æå符串示ä¾å¦ä¸ï¼
","
"me"
"me@example.org you@example.org"
ææ¶ï¼æä¾ä¸ä¸ªä¸ä¸ææç¤ºï¼è¯´æè¾å
¥æ°æ®åºè¯¥éåä»ä¹å½¢å¼ï¼æ¯å¾æå¸®å©çã妿页é¢è®¾è®¡æ²¡æä¸ºæ¯ä¸ª <input>
æä¾æè¿°æ§çæ ç¾ï¼è¿ä¸ç¹å°±ç¹å«éè¦ãè¿å°±æ¯å ä½ç¬¦çä½ç¨ãå ä½ç¬¦æ¯ä¸ä¸ªå¼ï¼å®éè¿å±ç¤ºä¸ä¸ªææå¼çä¾åæ¥è¯æ value
åºè¯¥éåçå½¢å¼ï¼å½å
ç´ ç value
为 "" æ¶ï¼å®å°æ¾ç¤ºå¨ç¼è¾æ¡å
ã䏿¦æ°æ®è¢«è¾å
¥æ¡ä¸ï¼å ä½ç¬¦å°±ä¼æ¶å¤±ï¼å¦ææ¡è¢«æ¸
空ï¼å ä½ç¬¦ä¼éæ°åºç°ã
è¿éï¼æä»¬æä¸ä¸ªå«æå ä½ç¬¦ sophie@example.com
ç email
è¾å
¥æ¡ã请注æå¨æ¹åç¼è¾æ¡çå
容æ¶å ä½ç¬¦å¦ä½æ¶å¤±åéæ°åºç°ã
<input type="email" placeholder="sophie@example.com" />
æ§å¶è¾å
¥æ¡å¤§å°
ä¸ä» å¯ä»¥æ§å¶è¾å ¥æ¡çç©çé¿åº¦ï¼è¿å¯ä»¥æ§å¶è¾å ¥ææ¬æ¬èº«å 许çæå°åæå¤§é¿åº¦ã
è¾å ¥æ¡ç©ç大å°è¾å
¥æ¡çç©ç尺寸å¯ä»¥ç¨ size
屿§æ¥æ§å¶ãéè¿å®ï¼ä½ å¯ä»¥æå®è¾å
¥æ¡ä¸æ¬¡å¯ä»¥æ¾ç¤ºçå符æ°ãå¨è¿ä¸ªä¾åä¸ï¼email
ç¼è¾æ¡æ 15 个å符宽ï¼
<input type="email" size="15" />
å
ç´ å¼çé¿åº¦
size
ä¸è¾å
¥ççµåé®ä»¶å°åæ¬èº«çé¿åº¦éå¶æ¯åå¼çï¼æä»¥ä½ å¯ä»¥è®©å段å¨ä¸ä¸ªå°ç©ºé´ééåºï¼åæ¶ä»ç¶å
许è¾å
¥æ´é¿ççµåé®ä»¶å°åå符串ãä½ å¯ä»¥ä½¿ç¨ minlength
屿§ä¸ºè¾å
¥ççµåé®ä»¶å°åæå®ä¸ä¸ªæå°é¿åº¦ï¼ä»¥å符为åä½ï¼åæ ·ï¼ä½¿ç¨ maxlength
æ¥è®¾ç½®è¾å
¥çµåé®ä»¶å°åçæå¤§é¿åº¦ã
ä¸é¢çä¾åå建äºä¸ä¸ª 32 个å符宽ççµåé®ä»¶å°åè¾å ¥æ¡ï¼è¦æ±å 容ä¸è½çäº 3 个å符ï¼ä¸è½é¿äº 64 个å符ã
<input type="email" size="32" minlength="3" maxlength="64" />
æä¾é»è®¤é项 ä½¿ç¨ value 屿§æä¾å个é»è®¤å¼
åå¾å¸¸ä¸æ ·ï¼ä½ å¯ä»¥éè¿è®¾ç½® value
屿§ï¼ä¸º email
è¾å
¥æ¡æä¾ä¸ä¸ªé»è®¤å¼ï¼
<input type="email" value="default@example.com" />
æä¾æ¨èå¼å表
åè¿ä¸æ¥ï¼ä½ å¯ä»¥æä¾ä¸ä¸ªé»è®¤é项çå表ï¼ç¨æ·å¯ä»¥éè¿æå® list
屿§ä»ä¸éæ©ãè¿å¹¶ä¸éå¶ç¨æ·ä½¿ç¨è¿äºé项ï¼ä½å¯ä»¥è®©ä»ä»¬æ´å¿«å°éæ©å¸¸ç¨ççµåé®ä»¶å°åãè¿ä¹ä¸º autocomplete
æä¾æç¤ºãlist
屿§æå®äº <datalist>
ç IDï¼å®åå
å«äºæ¯ä¸ªå»ºè®®å¼çä¸ä¸ª <option>
å
ç´ ï¼æ¯ä¸ª option
ç value
æ¯çµåé®ä»¶è¾å
¥æ¡ç对åºå»ºè®®å¼ã
<input type="email" size="40" list="defaultEmails" />
<datalist id="defaultEmails">
<option value="jbond007@mi6.defence.gov.uk"></option>
<option value="jbourne@unknown.net"></option>
<option value="nfury@shield.org"></option>
<option value="tony@starkindustries.com"></option>
<option value="hulk@grrrrrrrr.arg"></option>
</datalist>
æäº <datalist>
å
ç´ åå
¶ <option>
ï¼æµè§å¨å°æä¾æå®çå¼ä½ä¸ºçµåé®ä»¶å°åçæ½å¨å¼ï¼è¿é常以弹åºå¼æä¸æå¼èåçå½¢å¼åç°ï¼å
¶ä¸å
å«å»ºè®®ãè½ç¶å
·ä½çç¨æ·ä½éªå¯è½å æµè§å¨èå¼ï¼ä½é常æ
åµä¸ï¼ç¹å»ç¼è¾æ¡å°±ä¼åºç°å»ºè®®ççµåé®ä»¶å°åç䏿èåãç¶åï¼å½ç¨æ·è¾å
¥æ¶ï¼è¯¥åè¡¨è¢«è¿æ»¤ï¼åªæ¾ç¤ºå¹é
çå¼ãæ¯ä¸ªé®å
¥çå符é½ä¼ç¼©å°å表çèå´ï¼ç´å°ç¨æ·ååºéæ©æé®å
¥ä¸ä¸ªèªå®ä¹å¼ã
email
è¾å
¥æä¸¤ä¸ªçº§å«çå
容éªè¯ãé¦å
ï¼ææ <input>
齿æ åçéªè¯çº§å«ï¼å®èªå¨ç¡®ä¿å
å®¹ç¬¦åææçµåé®ä»¶å°åçè¦æ±ãä½ä¹å¯ä»¥éæ©æ·»å é¢å¤çè¿æ»¤åè½ï¼ä»¥ç¡®ä¿æ»¡è¶³ä½ èªå·±çç¹æ®éæ±ã
è¦åï¼ HTML 表åéªè¯ä¸è½æ¿ä»£ç¡®ä¿è¾å ¥çæ°æ®æ ¼å¼æ£ç¡®çèæ¬ãå¯¹äºæäºäººæ¥è¯´ï¼è°æ´ HTML é常容æï¼å 为å®å 许ä»ä»¬ç»è¿éªè¯ï¼æè å®å ¨å é¤å®ãæäººä¹å¯ä»¥å®å ¨ç»è¿ HTML å¹¶å°æ°æ®ç´æ¥æäº¤ç»ä½ çæå¡å¨ã妿æå¡å¨ç«¯ä»£ç æ æ³éªè¯å®æ¶å°çæ°æ®ï¼å彿°æ®æ ¼å¼ä¸æ£ç¡®ï¼ææ°æ®å¤ªå¤§ï¼ç±»åé误ççï¼è¾å ¥æ°æ®åºæ¶ï¼ç¾é¾å¯è½ä¼åçã
åºæ¬éªè¯æµè§å¨èªå¨æä¾éªè¯ï¼ä»¥ç¡®ä¿åªæç¬¦åäºèç½çµåé®ä»¶å°åæ åæ ¼å¼çææ¬è¢«è¾å ¥å°è¾å ¥æ¡ãæµè§å¨ä½¿ç¨ä¸ç§ç¸å½äºä»¥ä¸æ£å表达å¼çç®æ³ï¼
/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
è¦äºè§£æ´å¤å
³äºè¡¨åéªè¯çå·¥ä½åçï¼ä»¥åå¦ä½å©ç¨ :valid
å :invalid
è¿ä¸¤ä¸ª CSS 屿§ï¼æ ¹æ®å½å弿¯å¦æææ¥è®¾è®¡è¾å
¥çæ ·å¼ï¼è¯·åé
è¡¨åæ°æ®éªè¯ä¸æã
夿³¨ï¼ æä¸äºå·²ç¥çè§èé®é¢ä¸å½é ååå HTML ä¸çµåé®ä»¶å°åçéªè¯æå ³ãåé W3C bug 15489 以äºè§£è¯¦ç»å 容ã
模å¼éªè¯å¦æä½ éè¦è¿ä¸æ¥éå¶è¾å
¥çé®ä»¶å°åï¼ä¸ä»
ä»
éè¦âä»»ä½çèµ·æ¥åé®ä»¶å°åçå符串âï¼ä½ å¯ä»¥ä½¿ç¨ pattern
屿§æ¥æå®ä¸ä¸ªæ£å表达å¼ï¼è¯¥å¼å¿
é¡»ä¸ä¹å¹é
æææã妿æå®äº multiple
屿§ï¼æ¯ä¸ªç±éå·åå¼çå¼å¿
须满足该æ£å表达å¼ã
ä¾å¦ï¼åè®¾ä½ æ£å¨ä¸º Best Startup Ever, Inc. å ¬å¸çå工建ç«ä¸ä¸ªæ¯æé¡µé¢ï¼å¦æä»ä»¬çæä¸ªé¡µé¢åºç°é®é¢ï¼ä»ä»¬å¯ä»¥èç³» IT é¨é¨å¯»æ±å¸®å©ã卿们çç®å表åä¸ï¼ç¨æ·éè¦è¾å ¥åºç°ä»ä»¬çé®ç®±å°åï¼ä»¥åæè¿°éå°çé®é¢ã为äºå®å ¨èµ·è§ï¼æä»¬å¸æç¨æ·ä¸ä» æä¾äºææçé®ç®±å°åï¼èä¸è¿æ¯ä¸ä¸ªå é¨é®ä»¶å°åã
ç±äº email
ç±»åçè¾å
¥ä¼å¯¹æ åé®ç®±å°ååèªå®ä¹ pattern
åæ¶è¿è¡æ ¡éªï¼ä½ å¯ä»¥å¾æ¹ä¾¿å°å®ç°è¿äºãæä»¬æ¥ççå¦ä½è¿æ ·åï¼
<form>
<div class="emailBox">
<label for="emailAddress">ä½ çé®ç®±å°å</label><br />
<input
id="emailAddress"
type="email"
size="64"
maxlength="64"
required
placeholder="username@beststartupever.com"
pattern=".+@beststartupever\.com"
title="请ä»
æä¾ Best Startup Ever å
¬å¸é®ä»¶å°å" />
</div>
<div class="messageBox">
<label for="message">请æ±</label><br />
<textarea
id="message"
cols="80"
rows="8"
required
placeholder="æçéå太紧äºï¼è䏿å¿è®°å¦ä½è·³èäºã"></textarea>
</div>
<input type="submit" value="åé请æ±" />
</form>
æä»¬ç <form>
表åå
å«ä¸ä¸ª email
ç±»åç <input>
ï¼ç¨äºç¨æ·çµåé®ä»¶å°åï¼ä¸ä¸ª <textarea>
ï¼ç¨æ¥è¾å
¥ä»ä»¬ç IT ä¿¡æ¯ï¼ä»¥åä¸ä¸ª <input>
ç±»å为 "submit"
çæé®ï¼ç¨æ¥å建ä¸ä¸ªæäº¤è¡¨åãæ¯ä¸ªææ¬è¾å
¥æ¡é½æä¸ä¸ª <label>
ä¸ä¹ç¸å
³ï¼è®©ç¨æ·ç¥é对ä»ä»¬çææã
让æä»¬ä»ç»çççµåé®ä»¶å°åè¾å
¥æ¡ãå®ç size
å maxlength
屿§é½è¢«è®¾ç½®ä¸º 64ï¼ä»¥ä¾¿ä¸º 64 个å符ççµåé®ä»¶å°åæä¾ç©ºé´ï¼å¹¶å°å®é
è¾å
¥çå符æ°éå¶å¨æå¤§ 64 个ãè¿éè¿æå®äº required
屿§ï¼ä½¿å¾ç¨æ·å¿
é¡»æä¾ä¸ä¸ªææççµåé®ä»¶å°åã
表å䏿ä¾äºä¸ä¸ªéå½ç placeholder
ââusername@beststartupever.com
ï¼ä»¥è¯æä»ä¹æ¯ææçæ¡ç®ãè¿ä¸ªå符串表æï¼åºè¯¥è¾å
¥ä¸ä¸ªçµåé®ä»¶å°åï¼å¹¶å»ºè®®å®åºè¯¥æ¯ä¸ä¸ªä¼ä¸ç beststartupever.com è´¦æ·ãæ¤å¤ï¼ä½¿ç¨ email
ç±»åå°éªè¯ææ¬ä»¥ç¡®ä¿å®çæ ¼å¼åä¸ä¸ªçµåé®ä»¶å°åã妿è¾å
¥æ¡ä¸çææ¬ä¸æ¯çµåé®ä»¶å°åï¼ä½ ä¼å¾å°ä¸ä¸ªé误信æ¯ï¼çèµ·æ¥åè¿æ ·ï¼
妿æä»¬è®©äºæ
åçå¨è¿ä¸ªé¶æ®µï¼æä»¬è³å°ä¼å¨åæ³ççµåé®ä»¶å°åä¸è¿è¡éªè¯ã使们æ³èµ°å¾æ´è¿ï¼æä»¬æ³ç¡®ä¿çµåé®ä»¶å°åå®é
䏿¯âusername@beststartupever.comâçå½¢å¼ãè¿å°±æ¯æä»¬è¦ä½¿ç¨ pattern
çå°æ¹ãæä»¬å° pattern
设置为 .+@beststartupever.com
ãè¿ä¸ªç®åçæ£å表达å¼è¦æ±ä¸ä¸ªè³å°ç±ä¸ä¸ªä»»ä½ç±»åçåç¬¦ç»æçå符串ï¼ç¶åæ¯â@âï¼å颿¯ååâbeststartupever.comâã
请注æï¼è¿æ ¹æ¬ä¸æ¯ä¸ä¸ªææççµåé®ä»¶å°åè¿æ»¤å¨ï¼å®å 许诸å¦â @beststartupever.comâï¼æ³¨æåé¢çç©ºæ ¼ï¼æâ@@beststartupever.comâè¿æ ·çå 容ï¼å®ä»¬é½æ¯æ æçãç¶èï¼æµè§å¨å¯¹æå®çææ¬åæ¶è¿è¡æ åççµåé®ä»¶å°åè¿æ»¤å¨åæä»¬çèªå®ä¹æ¨¡å¼ãç»æï¼æä»¬çéªè¯ç»ææ¯ï¼âç¡®ä¿è¿ç±»ä¼¼äºä¸ä¸ªææççµåé®ä»¶å°åï¼å¦ææ¯çè¯ï¼ç¡®ä¿å®ä¹æ¯ä¸ä¸ª beststartupever.com çå°åãâ
建议å¨ä½¿ç¨ pattern
屿§çåæ¶ä½¿ç¨ title
ãå¦æä½ è¿æ ·åï¼title
å¿
é¡»æè¿°è¯¥æ¨¡å¼ãä¹å°±æ¯è¯´ï¼å®åºè¯¥è§£éæ°æ®åºè¯¥éåä»ä¹æ ¼å¼ï¼è䏿¯ä»»ä½å
¶ä»ä¿¡æ¯ãè¿æ¯å 为 title
å¯ä»¥ä½ä¸ºéªè¯é误信æ¯çä¸é¨å被æ¾ç¤ºæè¯´åºãä¾å¦ï¼æµè§å¨å¯è½ä¼æ¾ç¤ºâè¾å
¥çææ¬ä¸ç¬¦åè¦æ±ç模å¼ãâï¼éåæ¯ä½ æå®ç title
ãå¦æä½ ç title
æ¯ç±»ä¼¼äºâEmail addressâçå符串ï¼ç»æå°æ¯âè¾å
¥çææ¬ä¸ç¬¦åè¦æ±ç模å¼ãEmail addressâï¼è¿ä¸å¤ªé顺ã
è¿å°±æ¯ä¸ºä»ä¹æä»¬æå®å符串âè¯·åªæä¾ Best Startup Ever å ¬å¸ççµåé®ä»¶å°åâãéè¿è¿æ ·åï¼æäº§çç宿´é误信æ¯å¯è½æ¯è¿æ ·çï¼âè¾å ¥çææ¬ä¸ç¬¦åè¦æ±ç模å¼ãè¯·åªæä¾ Best Startup Ever å ¬å¸ççµåé®ä»¶å°åâã
夿³¨ï¼ å¦æä½ å¨ç¼åéªè¯æ£åè¡¨è¾¾å¼æ¶éå°éº»ç¦ï¼å®ä»¬ä¸è½æ£å¸¸å·¥ä½ï¼è¯·æ£æ¥ä½ çæµè§å¨æ§å¶å°ï¼é£éå¯è½ææç¨çéè¯¯ä¿¡æ¯æ¥å¸®å©ä½ è§£å³é®é¢ã
示ä¾è¿éæä»¬æä¸ä¸ª ID 为 emailAddress
ççµåé®ä»¶è¾å
¥æ¡ï¼å®æå¤å¯ä»¥æ 256 个å符é¿ãè¾å
¥æ¡æ¬èº«ç宽度为 64 个å符ï¼å¹¶å¨åæ®µä¸ºç©ºæ¶æ¾ç¤ºææ¬ user@example.gov
ä½ä¸ºå ä½ç¬¦ãæ¤å¤ï¼éè¿ä½¿ç¨multiple
屿§ï¼è¯¥æ¡è¢«é
置为å
è®¸ç¨æ·è¾å
¥é¶ä¸ªæå¤ä¸ªçµåé®ä»¶å°åï¼ç¨éå·åéï¼å¦å
许å¤ä¸ªçµåé®ä»¶å°åä¸æè¿°ãæåï¼list
屿§å
å«ä¸ä¸ª <datalist>
ç IDï¼å
¶ <option>
æå®ä¸ç»å»ºè®®å¼ï¼ä¾ç¨æ·éæ©ã
ä½ä¸ºè¡¥å
ï¼<label>
å
ç´ è¢«ç¨æ¥ä¸ºçµåé®ä»¶è¾å
¥æ¡å»ºç«ä¸ä¸ªæ ç¾ï¼å
¶ for
屿§å¼ç¨äº <input>
å
ç´ ç emailAddress
IDãéè¿è¿ç§æ¹å¼å°è¿ä¸¤ä¸ªå
ç´ è系起æ¥ï¼ç¹å»æ ç¾å°èç¦è¾å
¥å
ç´ ã
<label for="emailAddress">çµåé®ä»¶</label><br />
<input
id="emailAddress"
type="email"
placeholder="user@example.gov"
list="defaultEmails"
size="64"
maxlength="256"
multiple />
<datalist id="defaultEmails">
<option value="jbond007@mi6.defence.gov.uk"></option>
<option value="jbourne@unknown.net"></option>
<option value="nfury@shield.org"></option>
<option value="tony@starkindustries.com"></option>
<option value="hulk@grrrrrrrr.arg"></option>
</datalist>
ææ¯æ»ç» è§è æµè§å¨å
¼å®¹æ§ åè§
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4