๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ปSTUDY/HTML

[HTML5] form์š”์†Œ๋งŒ๋“ค๊ธฐ

๋ฐ˜์‘ํ˜•

[HTML5] HTML ํผ ์š”์†Œ ๋งŒ๋“ค๊ธฐ

HTML ํผ ์š”์†Œ ๋งŒ๋“ค๊ธฐ

ํผ ๊ด€๋ จ ํƒœ๊ทธ๋“ค

1. ํผ ๋งŒ๋“ค๊ธฐ

  • ์•„์ด๋””, ๋น„๋ฐ€๋ฒˆํ˜ธ, ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ, ํšŒ์›๊ฐ€์ž… ์ฐฝ ๋“ฑ ์›น ์‚ฌ์ดํŠธ๋กœ ์ •๋ณด๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋Š ๋ชจ๋“  ์š”์†Œ๋ฅผ ํผ์ด๋ผ๊ณ  ํ•œ๋‹ค.
  • ํผ์˜ ๋™์ž‘๋ฐฉ์‹ :: ์ •๋ณด์ž…๋ ฅ -- ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ ํด๋ฆญ -- ์„œ๋ฒ„๋กœ ๋‚ด์šฉ ์ „์†ก -- ์„œ๋ฒ„ ๋‚ด์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๋น„๊ต -- ๋ธŒ๋ผ์šฐ์ €์— ๊ฒฐ๊ณผ ํ‘œ์‹œ
  • form :: ํผ ๋งŒ๋“ค๊ธฐ. ํผ ํƒœ๊ทธ์˜ ์†์„ฑ์—์„œ ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ์ž๋ฃŒ๋ฅผ ์„œ๋ฒ„๋กœ ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ๋„˜๊ธธ์ง€, ์–ด๋–ค ํ”„๋กœ๊ทธ๋žจ์„ ์ด์šฉํ•ด ์ฒ˜๋ฆฌํ• ๊ฒƒ์ธ์ง€ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • method :: ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๋‚ด์šฉ์„ ์„œ๋ฒ„๋กœ ์–ด๋–ป๊ฒŒ ๋„˜๊ฒจ์ค„ ๊ฒƒ์ธ์ง€ ์ง€์ •.
    • get :: ์ฃผ์†Œ ํ‘œ์‹œ์ค„์— ์ž…๋ ฅ๊ฐ’์ด ๊ทธ๋Œ€๋กœ ๋“œ๋Ÿฌ๋‚จ.
    • post :: ํ‘œ์ค€์ž…๋ ฅ(standard input)์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†ก. ์ž…๋ ฅ๊ธธ์ด์— ์ œํ•œ์ด ์—†์œผ๋ฉฐ, ์ž…๋ ฅํ•œ ๋‚ด์šฉ์ด ๋“œ๋Ÿฌ๋‚˜์ง€ ์•Š์Œ.
  • name :: ํ•œ ๋ฌธ์„œ ์•ˆ์— ์—ฌ๋Ÿฌ๊ฐœ์˜ form์ด ์žˆ์„ ๊ฒฝ์šฐ๋ฅผ ์œ„ํ•ด ์ด๋ฆ„ ์ง€์ •.
  • action :: form ํƒœ๊ทธ ์•ˆ์˜ ๋‚ด์šฉ์„ ์ฒ˜๋ฆฌํ•ด ์ค„ ์„œ๋ฒ„ ํ”„๋กœ๊ทธ๋žจ ์ง€์ •.
  • target :: actionํƒœ๊ทธ์—์„œ ์ง€์ •ํ•œ ์Šคํฌ๋ฆฝํŠธ ํŒŒ์ผ์„ ๋‹ค๋ฅธ ์ฐฝ์—์„œ ์—ด๊ธฐ.
<form action="search.php" method="post" autocomplete="off">
  <input type="text" title="๊ฒ€์ƒ‰">
  <input type="submit" value="๊ฒ€์ƒ‰">
</form>
  • input์—์„œ title์ด๋ž€?
    • input ์š”์†Œ์— label์„ ์ œ๊ณตํ•˜์ง€ ๋ชปํ•  ๋•Œ ๋Œ€์‹  ์‚ฌ์šฉ.
  • autocomplete="on || off"
    • on :: ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ, ๋ธŒ๋ผ์šฐ์ €๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์ด์ „์— ์ž…๋ ฅํ•œ ๊ฐ’์„ ๊ธฐ๋ฐ˜์œผ๋กœํ•˜์—ฌ ์ž๋™์œผ๋กœ ๊ฐ’์„ ์™„์„ฑ.
    • off :: ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ž๋™์œผ๋กœ ๊ฐ’์„ ์™„์„ฑํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ, ์‚ฌ์šฉ์ž๋Š” ๋งค๋ฒˆ ๊ฐ ์ž…๋ ฅ ํ•„๋“œ์— ๊ฐ’์„ ๋๊นŒ์ง€ ์ž…๋ ฅํ•ด์•ผ ํ•จ.
      ์ฐธ๊ณ  :: formํƒœ๊ทธ์˜ autocomplete ์†์„ฑ

 

  • label :: ํผ ์š”์†Œ์— ๋ ˆ์ด๋ธ” ๋ถ™์ด๊ธฐ
    • ๋ ˆ์ด๋ธ”์ด๋ž€?
      • ์ฐฝ ์˜†์— '์•„์ด๋””', '๋น„๋ฐ€๋ฒˆํ˜ธ' ์ฒ˜๋Ÿผ ํ…์ŠคํŠธ๋ฅผ ๋ถ™์—ฌ ๋†“์€ ๊ฒƒ.
    • label ํƒœ๊ทธ๋ฅผ ํ†ตํ•ด ํผ+ํ…์ŠคํŠธ๊ฐ€ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์•Œ ์ˆ˜ ์žˆ๋‹ค.
<!-- <label>ํƒœ๊ทธ ์•ˆ์— ํผ ์š”์†Œ๋ฅผ ๋„ฃ๋Š” ๋ฐฉ๋ฒ• -->
<label>์•„์ด๋””(6์ž ์ด์ƒ)<input type="text"></label>

<!-- <label>๊ณผ ํผ ์š”์†Œ๋ฅผ ๋”ฐ๋กœ ์‚ฌ์šฉํ•˜๊ณ , id ์†์„ฑ์œผ๋กœ ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ• -->
<label for="user-id">์•„์ด๋””(6์ž ์ด์ƒ)</label>
<input type="text" id="user-id">

๋ผ๋””์˜ค๋ฒ„ํŠผ / ์ฒดํฌ๋ฐ•์Šค์— ํ…์ŠคํŠธ๋ฅผ ์—ฐ๊ฒฐํ•ด๋‘๋ฉด ํ„ฐ์น˜ํ•˜๊ธฐ ํŽธ๋ฆฌํ•˜๋‹ค.

<ul>
  <li>
   <label><input type="radio" name="subject" value="select1">์„ ํƒ์ง€1</label>
  </li>
  <li>
   <label><input type="radio" name="subject" value="select2">์„ ํƒ์ง€2</label>
  </li>
  <li>
   <label><input type="radio" name="subject" value="select3">์„ ํƒ์ง€3</label>
  </li>
</ul>

 

  • <fieldset>,<legend> :: ํผ ์š”์†Œ ๊ทธ๋ฃน์œผ๋กœ ๋ฌถ๊ธฐ
<form>
  <fieldset>
    <legend>Fruit juice size</legend>
    <p>
      <input type="radio" name="size" id="size_1" value="small">
      <label for="size_1">Small</label>
    </p>
    <p>
      <input type="radio" name="size" id="size_2" value="medium">
      <label for="size_2">Medium</label>
    </p> 
    <p>
      <input type="radio" name="size" id="size_3" value="large">
      <label for="size_3">Large</label>
    </p>
  </fieldset>
</form>
Fruit juice size

 


 

2. ์‚ฌ์šฉ์ž ์ž…๋ ฅ์„ ์œ„ํ•œ <input> ํƒœ๊ทธ

  • <input> :: ์ž…๋ ฅ ํ•ญ๋ชฉ ๋งŒ๋“ค๊ธฐ
    • id ์†์„ฑ :: ๋˜‘๊ฐ™์€ ํผ ์š”์†Œ๋ฅผ ์—ฌ๋Ÿฌ ๋ฒˆ ์‚ฌ์šฉํ•  ๋•Œ, ์š”์†Œ๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด id ์‚ฌ์šฉ.
    • type ์†์„ฑ :: input ํƒœ๊ทธ๋กœ ๋„ฃ์„ ์ˆ˜ ์žˆ๋Š” ์œ ํ˜•.
      ์œ ํ˜• ์„ค๋ช…
      hidden ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ณด์ด์ง€ ์•Š๊ณ  ์„œ๋ฒ„๋กœ ๋„˜๊ธฐ๋Š” ๊ฐ’.
      text ํ•œ ์ค„์งœ๋ฆฌ ํ…์ŠคํŠธ ์ƒ์ž
      search ๊ฒ€์ƒ‰์ƒ์ž
      tel ์ „ํ™”๋ฒˆํ˜ธ ํ•„๋“œ
      url URL ํ•„๋“œ
      email ์ด๋ฉ”์ผ ํ•„๋“œ
      password ๋น„๋ฐ€๋ฒˆํ˜ธ ํ•„๋“œ
      datetime ๊ตญ์ œ ํ‘œ์ค€์‹œ์˜ ๋‚ ์งœ์™€ ์‹œ๊ฐ„(์—ฐ,์›”,์ผ,์‹œ,๋ถ„,์ดˆ,๋ถ„ํ• ์ดˆ)
      datetime-local ์‚ฌ์šฉ์ž๊ฐ€ ์žˆ๋Š” ์ง€์—ญ์˜ ๋‚ ์งœ์™€ ์‹œ๊ฐ„
      date ์‚ฌ์šฉ์ž ์ง€์—ญ์˜ ๋‚ ์งœ(์—ฐ,์›”,์ผ)
      month ์‚ฌ์šฉ์ž ์ง€์—ญ์˜ ๋‚ ์งœ(์—ฐ,์›”)
      week ์‚ฌ์šฉ์ž ์ง€์—ญ์˜ ๋‚ ์งœ(์—ฐ,์ฃผ)
      time ์‚ฌ์šฉ์ž ์ง€์—ญ์˜ ์‹œ๊ฐ„(์‹œ,๋ถ„,์ดˆ,๋ถ„ํ• ์ดˆ)
      number ์ˆซ์ž๋ฅผ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ๋Š” ํ™”์‚ดํ‘œ
      range ์ˆซ์ž๋ฅผ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ๋Š” ์Šฌ๋ผ์ด๋“œ ๋ง‰๋Œ€
      color ์ƒ‰์ƒ ํ‘œ
      checkbox 2๊ฐœ ์ด์ƒ ์„ ํƒ๊ฐ€๋Šฅํ•œ ์ฒดํฌ๋ฐ•์Šค
      radio 1๊ฐœ๋งŒ ์„ ํƒ๊ฐ€๋Šฅํ•œ ๋ผ๋””์˜ค ๋ฒ„ํŠผ
      file ํŒŒ์ผ์„ ์ฒจ๋ถ€ํ•˜๋Š” ๋ฒ„ํŠผ
      submit ์„œ๋ฒ„๋กœ ์ „์†กํ•˜๋Š” ๋ฒ„ํŠผ
      image submit๋ฒ„ํŠผ ๋Œ€์‹  ์‚ฌ์šฉํ•  ์ด๋ฏธ์ง€ ์‚ฝ์ž…
      reset ๋ฆฌ์…‹ ๋ฒ„ํŠผ
      button ๋ฒ„ํŠผ
      **HTML5 ํƒœ๊ทธ์™€ ์†์„ฑ์€ ๋ชจ๋‘ ์ง€์›ํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ, ๋ธŒ๋ผ์šฐ์ €๋ฅผ ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค.
    • ๋ธŒ๋ผ์šฐ์ €/๋ฒ„์ „ ๋ณ„ ์ง€์› ์ƒํ™ฉ : Can I Use
    • 01) type="hidden" :: ํžˆ๋“  ํ•„๋“œ. ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ณด์—ฌ์ค„ ํ•„์š”์—†๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์„œ๋ฒ„๋กœ ์ „์†ก.
    • <input type="hidden" name="์ด๋ฆ„" value="์„œ๋ฒ„๋กœ ๋„˜๊ธธ ๊ฐ’">
  • 02) type="text" :: ํ…์ŠคํŠธ ํ•„๋“œ. ํ•œ ์ค„ ์งœ๋ฆฌ ํ…์ŠคํŠธ ํ•„๋“œ(์ด๋ฆ„, ์ฃผ์†Œ ๋“ฑ)
    • ํ…์ŠคํŠธ ํ•„๋“œ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์†์„ฑ.
      • name :: ํ…์ŠคํŠธ ํ•„๋“œ๋ฅผ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•œ ์ด๋ฆ„.
      • size :: ํ™”๋ฉด์— ๋ช‡ ๊ธ€์ž๊ฐ€ ๋ณด์ด๋„๋ก ํ•  ๊ฒƒ์ธ์ง€ ์ง€์ •.
      • value :: ํ…์ŠคํŠธ ํ•„๋“œ ๋ถ€๋ถ„์— ํ‘œ์‹œ๋  ๋‚ด์šฉ. value ์†์„ฑ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฉด ๋นˆ ํ…์ŠคํŠธ ํ•„๋“œ๊ฐ€ ํ‘œ์‹œ๋œ๋‹ค.
      • maxlength :: ์ตœ๋Œ€ ๋ฌธ์ž ๊ฐœ์ˆ˜ ์ง€์ •.
      •  
  • 03) type="password" :: ๋น„๋ฐ€๋ฒˆํ˜ธ ์ž…๋ ฅ๋ž€. ์ž…๋ ฅํ•œ ๋‚ด์šฉ์ด ํ™”๋ฉด์— ํŠน์ˆ˜๋ฌธ์ž๋กœ ํ‘œ์‹œ๋จ.

  • <form> <fieldset> <label>์•„์ด๋””: <input type="text" id="user_id" size="10"></label> <label>๋น„๋ฐ€๋ฒˆํ˜ธ: <input type="password" id="pw" size="10"></label> </fieldset> </form>
  • 3) type="search" , type="url", type="email", type="tel" :: ๋ถ„ํ™”๋œ ํ…์ŠคํŠธ ํ•„๋“œ.
    • type="search" :: HTML5์—์„œ ์ถ”๊ฐ€. ์ผ๋ถ€ ๋ธŒ๋ผ์šฐ์ €์—์„œ๋Š” ๊ฒ€์ƒ‰์ฐฝ ์˜ค๋ฅธ์ชฝ์— ๋‚ด์šฉ์„ ์ง€์šธ ์ˆ˜ ์žˆ๋Š” ๋‹ซ๊ธฐ(X)๋ฒ„ํŠผ์ด ํ‘œ์‹œ๋œ๋‹ค.
    • type="url" :: ๊ณต๋ฐฑ์ด ์—†๊ณ  ์˜๋ฌธ์ž์™€ ๋งˆ์นจํ‘œ, ์Šฌ๋ž˜์‹œ๋กœ๋งŒ ์ด๋ฃจ์–ด์ € ์žˆ๋Š” ์›น์ฃผ์†Œ ํ•„๋“œ. ๋ฐ˜๋“œ์‹œ http://๋กœ ์‹œ์ž‘ํ•˜๋Š” ์‚ฌ์ดํŠธ ์ฃผ์†Œ๋ฅผ ์ž…๋ ฅํ•ด์•ผ ํ•œ๋‹ค.
    • type="email" :: HTML5๋ถ€ํ„ฐ๋Š” ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋ฉ”์ผ ์ฃผ์†Œ ํ˜•์‹ ์—ฌ๋ถ€๋ฅผ ์ž๋™์œผ๋กœ ์ฒดํฌํ•ด์ค€๋‹ค.
    • type="tel" :: ๋ฐ”๋กœ ์ „ํ™”๋ฅผ ๊ฑธ ์ˆ˜ ์žˆ๋„๋ก ์ „ํ™”๋ฒˆํ˜ธ๋กœ ์ธ์‹.
    •  
  • 4) type="number" :: ์ˆซ์ž ์ž…๋ ฅ.
    • ๋ง ๊ทธ๋Œ€๋กœ ์ž…๋ ฅ๊ฐ’์„ ์ˆซ์ž๋กœ ์ธ์‹.
      • ๋ธŒ๋ผ์šฐ์ €์— ๋”ฐ๋ผ ์ฐฝ ์šฐ์ธก์— ์Šคํ•€๋ฐ•์Šค(์ฆ๊ฐ ํ™”์‚ดํ‘œ)๊ฐ€ ํ‘œ์‹œ๋˜๊ธฐ๋„ ํ•œ๋‹ค.
      <b>๊ฐœ์ˆ˜: </b><input type="number" min="1" max="10" value="1">๊ฐœ
    


  • ๊ฐœ์ˆ˜: ๊ฐœ
  • 5) type="range" :: ์Šฌ๋ผ์ด๋“œ๋ฐ” ์ˆซ์ž ์ง€์ •.
    • min :: ์ตœ์†Œ๊ฐ’ (๊ธฐ๋ณธ๊ฐ’์€ 0)
      • max :: ์ตœ๋Œ€๊ฐ’ (๊ธฐ๋ณธ๊ฐ’์€ 100)
      • step :: ์ง์ˆ˜ / ํ™€์ˆ˜ ๋“ฑ ํŠน์ • ์ˆซ์ž๋กœ ์ œํ•œํ•˜๋ ค๊ณ  ํ•  ๋•Œ ์ˆซ์ž ๊ฐ„๊ฒฉ์„ ์ง€์ • (๊ธฐ๋ณธ๊ฐ’์€ 1)
      • value :: ํ•„๋“œ์— ํ‘œ์‹œํ•  ์ดˆ๊ธฐ๊ฐ’.
      <b>๊ฐœ์ˆ˜:</b><input type="range" min="1" max="10" value="1">๊ฐœ
    


  • ๊ฐœ์ˆ˜:๊ฐœ
  • 6) type="radio" , type="checkbox" :: ๋ผ๋””์˜ค๋ฒ„ํŠผ / ์ฒดํฌ๋ฐ•์Šค
    • name :: ๊ตฌ๋ถ„์„ ์œ„ํ•œ ์‹๋ณ„์ž.
      • value :: ์„œ๋ฒ„๋กœ ๋„˜๊ฒจ์ค„ ๋•Œ ๋„˜๊ธธ ๊ฐ’.
      • checked :: ์„ ํƒ๋œ ์ƒํƒœ๋กœ ํ‘œ์‹œ.
  • 7) type="color" :: ์ƒ‰์ƒ ์„ ํƒ์ƒ์ž ํ‘œ์‹œ.
    • HTML5 ๋ถ€ํ„ฐ ์ง€์›.
      • ํŒŒ์ด์–ดํญ์Šค/ํฌ๋กฌ/์˜คํŽ˜๋ผ/์•ˆ๋“œ๋กœ์ด๋“œ ๋ธŒ๋ผ์šฐ์ € ์ง€์›. ๊ทธ ์™ธ์—๋Š” ํ…์ŠคํŠธ ํ•„๋“œ๋กœ ํ‘œ์‹œ๋œ๋‹ค.
      <label><input type="color"></label><br />
      <label>๊ธฐ๋ณธ value๋ฅผ ์ •ํ•ด๋†จ์„ ๋•Œ<input type="color" value="#eaeaea"></label>
    

  • 08) type="date", type="month", type="week" :: ๋‚ ์งœ ํ‘œ์‹œ.
    • type="date" :: ํ•„๋“œ์— yyyy-mm-dd ํ˜•์‹์œผ๋กœ ์—ฐ/์›”/์ผ ํ‘œ์‹œ.
    • type="month" :: yyyy-mm
    • type="week" :: yyyy-w24
  • 9) type="time", type="datetime", type="datetime-local" :: ์‹œ๊ฐ„ ์ง€์ •.
    • type="time" :: ์‹œ๊ฐ„
      • type="datetime" :: UTC๊ธฐ์ค€ ๋‚ ์งœ์™€ ์‹œ๊ฐ„. UTC๊ธฐ์ค€์ผ ๊ฒฝ์šฐ ์‹œ๊ฐ„๋’ค์— z๋ฅผ ๋ถ™์ด๋ฉด ๋˜๊ณ , ๊ทธ ์™ธ์—๋Š” +dd:dd ๋‚˜ -dd:dd๋กœ ์ง์ ‘ ๋ช‡ ์‹œ๊ฐ„ ๋ช‡ ๋ถ„์ด ์ฐจ์ด ๋‚˜๋Š”์ง€ ์ž…๋ ฅํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค.
      • type="datetime-local" :: ์‚ฌ์šฉ์ž์‹œ๊ฐ„ ๊ธฐ์ค€ ๋‚ ์งœ์™€ ์‹œ๊ฐ„.
      • ๋‚ ์งœ / ์‹œ๊ฐ„์—์„œ ๊ณตํ†ต์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ์†์„ฑ.
        • min :: ๋‚ ์งœ๋‚˜ ์‹œ๊ฐ„์˜ ์ตœ์†Ÿ๊ฐ’.
        • max:: ๋‚ ์งœ๋‚˜ ์‹œ๊ฐ„์˜ ์ตœ๋Œ€๊ฐ’.
        • step :: ์Šคํ•€ ๋ฐ•์Šค ํ™”์‚ดํ‘œ๋ฅผ ๋ˆ„๋ฅผ ๋•Œ ์–ผ๋งˆ๋‚˜ ์กฐ์ ˆํ• ์ง€ ์ง€์ •.
        • value :: ํ™”๋ฉด์— ํ‘œ์‹œํ•  ์ดˆ๊ธฐ๊ฐ’ ์ง€์ •. time์ผ ๊ฒฝ์šฐ 00:00 ~ 23:59, datetime์ด๋‚˜ datetime-local์ผ ๊ฒฝ์šฐ ๋‚ ์งœ ๋‹ค์Œ์— T๋ฅผ ์“ฐ๊ณ  24์‹œ๊ฐ„์ œ๋กœ ์‹œ๊ฐ„์„ ์ง€์ •ํ•œ๋‹ค. ex) 2018-07-18T14:00
  • 10) type="submit" , <type="reset"> :: ์„œ๋ฒ„ ์ „์†ก, ๋ฆฌ์…‹ ๋ฒ„ํŠผ ๋„ฃ๊ธฐ.
    • submit :: ํผ์— ์ž…๋ ฅํ•œ ์ •๋ณด๋ฅผ ์„œ๋ฒ„๋กœ ์ „์†ก.
      • reset :: input ์š”์†Œ์— ์ž…๋ ฅ๋œ ๋ชจ๋“  ๋‚ด์šฉ์„ ์‚ญ์ œํ•˜๊ณ  ์š”์†Œ ์žฌ์„ค์ •.
      • form action์—์„œ ์ง€์ •ํ•œ ํ”„๋กœ๊ทธ๋žจ์—์„œ ์ฒ˜๋ฆฌ๋จ.
      <form action="register.php" method="post">
        <label>๋ฉ”์ผ์ฃผ์†Œ: <input type="email"></label>
        <input type="submit" value="์ œ์ถœ">
        <input type="reset" value="๋‹ค์‹œ ์ž…๋ ฅ">
      </form>
    
  • 11) type="image" :: ์ด๋ฏธ์ง€ ๋ฒ„ํŠผ ๋„ฃ๊ธฐ. submit ๋ฒ„ํŠผ ๋Œ€์‹  ์ด๋ฏธ์ง€ ๋ฒ„ํŠผ์„ ๋„ฃ์„ ์ˆ˜ ์žˆ๋‹ค.
  • <input type="image" src="๊ฒฝ๋กœ" alt="๋Œ€์ฒด ํ…์ŠคํŠธ">
  • 12) type="button" :: ๋ฒ„ํŠผ ๋„ฃ๊ธฐ.
    • ์ž์ฒด ๊ธฐ๋Šฅ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ์Šคํฌ๋ฆฝํŠธ ํ•จ์ˆ˜ ๋“ฑ์„ ์—ฐ๊ฒฐํ•ด์„œ ์‚ฌ์šฉํ•œ๋‹ค.
      <input type="button" value="ํด๋ฆญ" onclick="ํ•จ์ˆ˜ ์ง€์ •">
    
  • 13) type="file" :: ํŒŒ์ผ ์ฒจ๋ถ€ํ•˜๊ธฐ.
  • <label>์ฒจ๋ถ€ํŒŒ์ผ <input type="file"></label>

 

3. <input>ํƒœ๊ทธ์˜ ๋‹ค์–‘ํ•œ ์†์„ฑ

  1. autofocus :: ์ž…๋ ฅ์ปค์„œ ํ‘œ์‹œํ•˜๊ธฐ.
    • ํŽ˜์ด์ง€๋ฅผ ๋ถˆ๋Ÿฌ์˜ค์ž๋งˆ์ž ์›ํ•˜๋Š” ํผ ์š”์†Œ์— ๋งˆ์šฐ์Šค ์ปค์„œ๋ฅผ ํ‘œ์‹œ.
    <label class="reg" for="uname">์ด๋ฆ„</label>
    <input type="text" id="uname" autofocus required>
    

 

  1. placeholder :: ํžŒํŠธ ํ‘œ์‹œํ•˜๊ธฐ.
    • ํ…์ŠคํŠธ ํ•„๋“œ๋ฅผ ์ž…๋ ฅํ•  ๋•Œ ํžˆ๋Š๋ฅผ ํ‘œ์‹œํ•˜๊ณ , ํด๋ฆญํ•˜๋ฉด ๋‚ด์šฉ์ด ์‚ฌ๋ผ์ง„๋‹ค.
    <label class="reg" for="uid">ํ•™๋ฒˆ</label>
    <input type="text" id="uid" placeholder="ํ•˜์ดํ”ˆ ์—†์ด ์ž…๋ ฅ">
    
  2. readonly :: ์ฝ๊ธฐ ์ „์šฉ ํ•„๋“œ ๋งŒ๋“ค๊ธฐ.
    • ์‚ฌ์šฉ์ž๊ฐ€ ์ˆ˜์ • / ์‚ญ์ œ ํ•  ์ˆ˜ ์—†๋Š” ์ฝ๊ธฐ ์ „์šฉ ํ•„๋“œ.
    • readonly๋ผ๊ณ ๋งŒ ์จ๋„ ๋˜๊ณ , readonly="readonly" ๋ผ๊ณ  ์จ๋„ ๋œ๋‹ค.
  3. required :: ํ•„์ˆ˜ ํ•„๋“œ ์ง€์ •ํ•˜๊ธฐ.
    • ์„œ๋ฒ„๋กœ submit ํ•˜๊ธฐ ์ „์— ํ•„์ˆ˜ ํ•„๋“œ์— ๋‚ด์šฉ์ด ๋ชจ๋‘ ์ฑ„์›Œ์กŒ๋Š”์ง€ ๊ฒ€์‚ฌํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” Boolean.
    • required ํ˜น์€ required="required" ๋ผ๊ณ  ์“ด๋‹ค.

 

  1. min, max, step :: ์ตœ์†Ÿ๊ฐ’, ์ตœ๋Œ€๊ฐ’, ์ˆซ์ž ๊ฐ„๊ฒฉ.
  2. size, minlength, maxlength :: ๊ธธ์ด, ์ตœ์†Œ๊ธธ์ด, ์ตœ๋Œ€๊ธธ์ด.
  3. formaction :: type="submit", type="image"์ผ ๋•Œ ์‹คํ–‰ํ•  ํ”„๋กœ๊ทธ๋žจ์„ ์—ฐ๊ฒฐ.
  4. formenctype :: type="submit", type="image" ์ผ ๋•Œ ์„œ๋ฒ„๋กœ ์ „์†กํ•œ ํผ ๋ฐ์ดํ„ฐ๋ฅผ ์–ด๋–ค ๋ฐฉ์‹์œผ๋กœ ํ•ด์„ํ•  ๊ฒƒ์ธ์ง€ ์ง€์ •.
  5. formmethod :: ์„œ๋ฒ„๋กœ ํผ์„ ์ „์†กํ•˜๋Š” ๋ฐฉ์‹(get, post ๋“ฑ)์„ ์ง€์ •. <form>ํƒœ๊ทธ์˜ ๋ฐฉ์‹์€ ๋ฌด์‹œ.
  6. formnovalidate :: ์„œ๋ฒ„๋กœ ์ „์†กํ•  ๋•Œ ํผ ๋ฐ์ดํ„ฐ๊ฐ€ ์œ ํšจํ•œ์ง€ ๊ฒ€์‚ฌ.
  7. formtarget :: ํผ ๋ฐ์ดํ„ฐ๋ฅผ ์„œ๋ฒ„๋กœ ์ „์†กํ•œ ํ›„ ์„œ๋ฒ„์˜ ์‘๋‹ต์„ ํ‘œ์‹œํ•  ํƒ€๊นƒ ์ง€์ •.
  8. width, height :: type="image" ์˜ ์ด๋ฏธ์ง€ ๋„ˆ๋น„์™€ ๋†’์ด ์ง€์ •.
  9. list :: <datalist>์— ์ •์˜ ํ•ด๋†“์€ ์˜ต์…˜๊ฐ’์„ <input>์— ๋‚˜์—ดํ•ด ๋ณด์—ฌ์คŒ.
  10. multiple :: type="email" ์ด๋‚˜ type="file" ์ผ ๋•Œ ๋‘ ๊ฐœ ์ด์ƒ์˜ ๊ฐ’์„ ์ž…๋ ฅ.

 


 

4. ์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ ๋‚˜์—ดํ•ด ๋ณด์—ฌ์ฃผ๊ธฐ

<select> <optgroup> <option> :: ๋“œ๋กญ๋‹ค์šด ๋ชฉ๋ก ๋งŒ๋“ค๊ธฐ.

  • ์‚ฌ์šฉ์ž๊ฐ€ ์—ฌ๋Ÿฌ ์˜ต์…˜ ์ค‘ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ชฉ๋ก.
  • <select> ์†์„ฑ
    • size :: ํ™”๋ฉด์— ํ‘œ์‹œ๋  ๋“œ๋กญ๋‹ค์šด ํ•ญ๋ชฉ ๊ฐœ์ˆ˜ ์ง€์ •.
    • multiple :: ctrl ํ‚ค๋ฅผ ๋ˆ„๋ฅธ ์ƒํƒœ๋กœ ์—ฌ๋Ÿฌ ํ•ญ๋ชฉ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋‹ค.
  • <option> ์†์„ฑ
    • value :: ์˜ต์…˜ ์„ ํƒ ์‹œ ์„œ๋ฒ„๋กœ ๋„˜๊ธธ ๊ฐ’ ์ง€์ •.
    • selected :: ํ™”๋ฉด์— ํ‘œ์‹œ๋  ๋•Œ ๊ธฐ๋ณธ์œผ๋กœ ์„ ํƒ๋˜์–ด ์žˆ๋Š” ์˜ต์…˜.
  • <optgroup> :: ์˜ต์…˜๋ผ๋ฆฌ ๋ฌถ๊ธฐ.
<select size="1" id="example">
  <optgroup label="๊ทธ๋ฃน 1">
  	<option value="one">๋‚ด์šฉ1</option>
    <option value="two">๋‚ด์šฉ2</option>
    <option value="three">๋‚ด์šฉ3</option>
    <option value="four" selected>๋‚ด์šฉ4</option>
  </optgroup>
  <optgroup label="๊ทธ๋ฃน 2">
  	<option value="five">๋‚ด์šฉ5</option>
    <option value="six">๋‚ด์šฉ6</option>
  </optgroup>
</select>

 

  • <detalist> <option> :: ๋ฐ์ดํ„ฐ ๋ชฉ๋ก ๊ฐ’ ์ž…๋ ฅ.
    • ํ…์ŠคํŠธ ํ•„๋“œ์— ๊ฐ’์„ ์ง์ ‘ ์ž…๋ ฅํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋ฐ์ดํ„ฐ ๋ชฉ๋ก ์ค‘์— ๊ฐ’์„ ์„ ํƒ.
    • <input> ํƒœ๊ทธ์™€ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ, input ์˜ list ์†์„ฑ๊ณผ ๋ฐ์ดํ„ฐ ๋ชฉ๋ก์˜ id๋ฅผ ๊ฐ™๊ฒŒ ์„ค์ •.
    • ์†์„ฑ
      • value :: label์„ ์„ ํƒํ–ˆ์„ ๋•Œ ์„œ๋ฒ„๋กœ ๋„˜๊ธธ ๊ฐ’.
      • label :: ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•ด ๋ธŒ๋ผ์šฐ์ €์— ํ‘œ์‹œํ•  ๋ ˆ์ด๋ธ”. ๋ฏธ์„ค์ • ์‹œ value ๊ฐ’์„ ๋ ˆ์ด๋ธ”๋กœ ์‚ฌ์šฉ.
    <input type="text" id="interest" list="choices">
    <detalist id="choices">
    	<option value="grammar" label="๋ฌธ๋ฒ•"></option>
      <option value="voca" label="์–ดํœ˜"></option>
      <option value="speaking" label="ํšŒํ™”"></option>
    </detalist>
    
  • <textarea> :: ์—ฌ๋ ค ์ค„ ํ…์ŠคํŠธ ์˜์—ญ.
    • ํ•œ ์ค„ ์ด์ƒ์˜ ๋ฌธ์žฅ์„ ์ž…๋ ฅํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํผ.
    • ์†์„ฑ
      • name :: ํ…์ŠคํŠธ ์˜์—ญ์˜ ์ด๋ฆ„.
      • cols :: ํ…์ŠคํŠธ ์˜์—ญ ๊ฐ€๋กœ ๋„ˆ๋น„๋ฅผ ๋ฌธ์ž ๋‹จ์œ„๋กœ ์ง€์ •.
      • rows :: ํ…์ŠคํŠธ ์˜์—ญ ์„ธ๋กœ ๊ธธ์ด๋ฅผ ์ค„ ๋‹จ์œ„๋กœ ์ง€์ •. ์ง€์ • ์ˆซ์ž๋ณด๋‹ค ์ค„ ๊ฐœ์ˆ˜๊ฐ€ ๋งŽ์•„์ง€๋ฉด ์Šคํฌ๋กค ๋ง‰๋Œ€๊ฐ€ ์ƒ์„ฑ.
    <textarea name="name" col="60" rows="5">
    ํ…์ŠคํŠธ ๋‚ด์šฉ
    ์ž…๋‹ˆ๋‹ค.
    
    ํ…์ŠคํŠธ ์˜์—ญ ํ•„๋“œ
    ์ž…๋‹ˆ๋‹ค.
    </textarea>
    

 


 

5. ๊ธฐํƒ€ ๋‹ค์–‘ํ•œ ํผ ์š”์†Œ๋“ค

  • <button> :: ๋ฒ„ํŠผ ๋„ฃ๊ธฐ.
    • type ์†์„ฑ (๋ฏธ ์ง€์ • ์‹œ submit)
      • submit :: ํผ์„ ์„œ๋ฒ„๋กœ ์ „์†ก.
      • reset :: ํผ์— ์ž…๋ ฅํ•œ ๋‚ด์šฉ ์ดˆ๊ธฐํ™”.
      • button :: ๊ธฐ๋Šฅ ์—†์Œ.
  • input ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ์™€ button ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ์˜ ๋ชจ์Šต์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
<input type="button" value="์ „์†กํ•˜๊ธฐ">
<button type="submit">์ „์†กํ•˜๊ธฐ</button>
  • button ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ฝ˜ํ…์ธ ๋ฅผ ํฌํ•จํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์•„์ด์ฝ˜์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ CSS๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

 

  • output :: ๊ณ„์‚ฐ ๊ฒฐ๊ณผ.
    • ์ด ํƒœ๊ทธ์— ์ž…๋ ฅํ•œ ๊ฐ’์€ ๊ณ„์‚ฐ ๊ฒฐ๊ณผ๋ผ๋Š” ๊ฒƒ์„ ๋ธŒ๋ผ์šฐ์ €์—๊ฒŒ ์ •ํ™•ํžˆ ์ธ์‹์‹œ์ผœ์ค€๋‹ค.
    <form oninput="result.value=parseInt(num1.value)+parseInt(num2.value)">
      <input type="number" name="num1" value="0" placeholder="์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”."> + 
      <input type="number" name="num2" value="0" placeholder="์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”."> = 
      <output name="result" for="num"></output>
    </form>
    + =

 

  • <progress> :: ์ง„ํ–‰์ƒํƒœ ๋ณด์—ฌ์ฃผ๊ธฐ.
    • value :: ์ž‘์—… ์ง„ํ–‰ ์ƒํƒœ. 0๋ถ€ํ„ฐ max๊ฐ’ ์‚ฌ์ด์˜ ๋ถ€๋™์†Œ์ˆ˜์ ์œผ๋กœ ํ‘œํ˜„๋˜๋ฉฐ, max๊ฐ’์ด ์ง€์ •๋˜์ง€ ์•Š์œผ๋ฉด 1๋ณด๋‹ค ์ž‘์•„์•ผ ํ•œ๋‹ค.
    • max :: ์ž‘์—…์ด ์™„๋ฃŒ๋˜์—ˆ์„ ๋•Œ์˜ ๊ฐ’. 0๋ณด๋‹ค ํฐ ๋ถ€๋™์†Œ์ˆ˜์ ์œผ๋กœ ํ‘œํ˜„.
<label>์ง„ํ–‰๋ฅ </label>
<progress value="70" max="100"></progress>

 

 

  • <meter> :: ๊ฐ’์ด ์ฐจ์ง€ํ•˜๋Š” ํฌ๊ธฐ ํ‘œ์‹œ.
    • progress๊ฐ€ ์ง„ํ–‰์ƒํƒœ ์˜€๋‹ค๋ฉด meter๋Š” ๊ฐ’์ด ์ฐจ์ง€ํ•˜๋Š” ํฌ๊ธฐ๋ฅผ ๋‚˜ํƒ€๋ƒ„.
    • ์†์„ฑ
      • min, max :: ์ตœ์†Ÿ๊ฐ’๊ณผ ์ตœ๋Œ€๊ฐ’. ๋ฏธ ์ง€์ • ์‹œ 0~1
      • value :: ๋ฒ”์œ„ ๋‚ด์—์„œ ์ฐจ์ง€ํ•˜๋Š” ๊ฐ’.
      • low, high :: ๋‚ฎ์€ / ๋†’์€ ๊ฐ’์˜ ๊ธฐ์ค€์น˜ ์„ค์ •.
      • optimum :: ์ตœ์  ๊ฐ’์˜ ๋ฒ”์œ„ ์ง€์ •. optimum์ด high๋ณด๋‹ค ํฌ๋ฉด value๊ฐ€ ํด์ˆ˜๋ก ์ข‹๊ณ , low๋ณด๋‹ค ์ž‘์œผ๋ฉด value๊ฐ€ ์ž‘์„ ์ˆ˜๋ก ์ข‹๋‹ค.
<ul>
  <li>
    <label>์ ์œ ์œจ 0.66</label>
    <meter value="0.66"></meter>
  </li>
  <li>
    <label>๋ฐฐํ„ฐ๋ฆฌ 15%</label>
    <meter min="0" max="100" low="20" high="70" optimum="100" value="15"></meter>
  </li>
  <li>
    <label>๋ฐฐํ„ฐ๋ฆฌ 30%</label>
    <meter min="0" max="100" low="20" high="70" optimum="100" value="30"></meter>
  </li>
  <li>
    <label>๋ฐฐํ„ฐ๋ฆฌ 85%</label>
    <meter min="0" max="100" low="20" high="70" optimum="100" value="85"></meter>
  </li>
</ul>

 


 

๋ฐ˜์‘ํ˜•

'๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ปSTUDY > HTML' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[HTML] abbr acronym  (0) 2021.12.23
[HTML] HTML ๊ทธ๋ฃนํ™” ๊ด€๋ จ ์š”์†Œ  (0) 2020.10.22
[HTML] HTML ๋งˆํฌ์—…  (0) 2020.10.21
[HTML] Meta Tags ๋ฉ”ํƒ€ํƒœ๊ทธ  (1) 2020.05.26
[HTML5] form์ž‘์„ฑ(MDN)  (0) 2020.03.13