πŸ“’

5. UI

5. UI

UIλŠ” "User Interface"의 μ€„μž„λ§λ‘œ μ‚¬μš©μžμ™€ 디지털 μž₯μΉ˜λ‚˜ ν”„λ‘œκ·Έλž¨ κ°„μ˜ μƒν˜Έμž‘μš©μ„ κ°€λŠ₯ν•˜κ²Œ ν•˜λŠ” μ‹œκ°μ , 청각적, 감각적 μš”μ†Œμ˜ μ§‘ν•©μž…λ‹ˆλ‹€. μΌμƒμ—μ„œ 슀마트폰, 컴퓨터, ATM, μžλ™μ°¨ λ‚΄λΉ„κ²Œμ΄μ…˜ λ“± λ‹€μ–‘ν•œ 디지털 μ œν’ˆμ—μ„œ μ ‘ν•  수 μžˆλŠ” UIλŠ” μš°λ¦¬κ°€ 디지털 ν™˜κ²½μ—μ„œ μ›ν•˜λŠ” μž‘μ—…μ„ μˆ˜ν–‰ν•˜λŠ” 데 ν•„μˆ˜μ μž…λ‹ˆλ‹€.
쒋은 UIλŠ” μ‚¬μš©μžμ˜ λͺ©μ κ³Ό λ‹ˆμ¦ˆλ₯Ό μ€‘μ‹¬μœΌλ‘œ μ„€κ³„λ˜λ©°, λ³΅μž‘ν•œ 기술적 λ‚΄μš©μ„ κ°„κ²°ν•˜κ³  μ§κ΄€μ μœΌλ‘œ μ‚¬μš©μžμ—κ²Œ μ „λ‹¬ν•©λ‹ˆλ‹€. κ·Έ κ²°κ³Ό, μ‚¬μš©μžλŠ” μ‰½κ²Œ μ›ν•˜λŠ” 정보λ₯Ό μ°Ύκ±°λ‚˜ μ›ν•˜λŠ” μž‘μ—…μ„ μ™„λ£Œν•  수 있게 λ©λ‹ˆλ‹€.
UI의 λ””μžμΈμ€ 색상, ν˜•νƒœ, λ ˆμ΄μ•„μ›ƒ, μ•„μ΄μ½˜, λ²„νŠΌ, 폰트 λ“± λ‹€μ–‘ν•œ μš”μ†Œκ°€ μ‘°ν™”λ‘­κ²Œ κ²°ν•©λ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ μš”μ†Œλ“€μ€ μ‚¬μš©μžμ˜ 주의λ₯Ό 끌고, μ‚¬μš©μžκ°€ μ›ν•˜λŠ” λ°©ν–₯으둜 μ•ˆλ‚΄ν•˜λ©°, 즐거운 μ‚¬μš© κ²½ν—˜μ„ μ œκ³΅ν•΄μ•Ό ν•©λ‹ˆλ‹€.
μ˜€λŠ˜λ‚ μ˜ 디지털 ν™˜κ²½μ€ λΉ λ₯΄κ²Œ λ³€ν™”ν•˜κ³  있기 λ•Œλ¬Έμ— UI λ””μžμΈ λ˜ν•œ μ§€μ†μ μœΌλ‘œ λ°œμ „ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. μ‚¬μš©μžμ˜ 행동, κΈ°λŒ€, 기술의 λ°œμ „ 등을 κ³ λ €ν•˜μ—¬ UIλŠ” κ³„μ†ν•΄μ„œ μƒˆλ‘œμš΄ λͺ¨μŠ΅μ„ 보여주고 μžˆμŠ΅λ‹ˆλ‹€. κ²°κ΅­, UIλŠ” 디지털 μ„Έκ³„μ™€μ˜ λŒ€ν™”λ₯Ό μ›ν™œν•˜κ²Œ λ§Œλ“€μ–΄ μ£ΌλŠ” 쀑심적인 역할을 ν•˜κ²Œ λ©λ‹ˆλ‹€.

5.1 λ‚΄λΉ„κ²Œμ΄μ…˜

μ›Ήμ‚¬μ΄νŠΈλ‚˜ μ•±μ—μ„œ μ‚¬μš©μžλŠ” λ‹€μ–‘ν•œ μ •λ³΄λ‚˜ κΈ°λŠ₯에 μ ‘κ·Όν•˜κΈ°λ₯Ό μ›ν•©λ‹ˆλ‹€. κ·Έλ ‡λ‹€λ©΄ μ–΄λ–»κ²Œ μ‚¬μš©μžμ—κ²Œ μ›ν•˜λŠ” μ •λ³΄λ‚˜ κΈ°λŠ₯으둜 μ‰½κ²Œ 이동할 수 μžˆλ„λ‘ μ•ˆλ‚΄ν•΄ 쀄 수 μžˆμ„κΉŒμš”? λ°”λ‘œ λ‚΄λΉ„κ²Œμ΄μ…˜ UIλ₯Ό 톡해 κ°€λŠ₯ν•©λ‹ˆλ‹€.
Β 
좜처: yes24좜처: yes24
좜처: yes24
λ‚΄λΉ„κ²Œμ΄μ…˜ UIλŠ” μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€μ˜ 핡심 μš”μ†Œ 쀑 ν•˜λ‚˜λ‘œ, μ‚¬μš©μžκ°€ μ›ν•˜λŠ” λͺ©μ μ§€κΉŒμ§€μ˜ 경둜λ₯Ό λͺ…ν™•ν•˜κ²Œ μ œμ‹œν•©λ‹ˆλ‹€. 전톡적인 메뉴바뢀터 ν˜„λŒ€μ˜ 햄버거 메뉴, νƒ­ λ°”, μ‚¬μ΄λ“œλ°”μ™€ 같은 λ‹€μ–‘ν•œ ν˜•νƒœλ‘œ λ‚˜νƒ€λ‚©λ‹ˆλ‹€. μ‚¬μš©μžλŠ” μ΄λŸ¬ν•œ λ‚΄λΉ„κ²Œμ΄μ…˜ μš”μ†Œλ₯Ό 톡해 μ›ν•˜λŠ” νŽ˜μ΄μ§€λ‚˜ μ„Ήμ…˜μœΌλ‘œ μ‰½κ²Œ 이동할 수 있게 되며, μ›Ήμ‚¬μ΄νŠΈλ‚˜ μ•±μ˜ 전체 ꡬ쑰와 μ •λ³΄μ˜ 흐름을 ν•œλˆˆμ— νŒŒμ•…ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
Β 
notion imagenotion image
Β 
쒋은 λ‚΄λΉ„κ²Œμ΄μ…˜ UIλŠ” μ‚¬μš©μžμ˜ 직관과 μΌμΉ˜ν•˜λ©°, λ³΅μž‘ν•œ 정보도 λ‹¨μˆœν•˜κ³  λͺ…ν™•ν•˜κ²Œ μ „λ‹¬ν•©λ‹ˆλ‹€. λ”°λΌμ„œ μ‚¬μš©μž κ²½ν—˜(UX)을 ν–₯μƒν•˜λŠ” 데 μ€‘μš”ν•œ 역할을 ν•©λ‹ˆλ‹€. μ˜€λŠ˜λ‚ μ˜ 디지털 ν™˜κ²½μ—μ„œ λ‚΄λΉ„κ²Œμ΄μ…˜ UIλŠ” μ‚¬μš©μžμ™€μ˜ μ†Œν†΅μ˜ 핡심 λ„κ΅¬λ‘œ, λ””μžμ΄λ„ˆμ™€ κ°œλ°œμžμ—κ²Œ λŠμž„μ—†λŠ” 연ꡬ와 λ°œμ „μ˜ μ£Όμ œκ°€ 되고 μžˆμŠ΅λ‹ˆλ‹€.
Β 

5.1.1 λ‚΄λΉ„κ²Œμ΄μ…˜μ˜ μš”μ†Œ

λ‚΄λΉ„κ²Œμ΄μ…˜ μš”μ†ŒλŠ” μ‚¬μš©μžκ°€ μ›Ή μ‚¬μ΄νŠΈ, λͺ¨λ°”일 μ•± λ˜λŠ” λ‹€λ₯Έ 디지털 μΈν„°νŽ˜μ΄μŠ€μ—μ„œ μ½˜ν…μΈ λ₯Ό μ°Ύκ³  νƒμƒ‰ν•˜λŠ” 데 도움을 μ£ΌλŠ” μš”μ†Œμ™€ ꡬ성 μš”μ†Œλ₯Ό λ§ν•©λ‹ˆλ‹€. μ•Œλ§žκ²Œ κ΅¬μ„±λœ λ‚΄λΉ„κ²Œμ΄μ…˜ UIλŠ” μ‚¬μš©μžμ™€ μ‹œμŠ€ν…œ κ°„μ˜ μƒν˜Έμž‘μš©μ„ μš©μ΄ν•˜κ²Œ 도와주며, μ‚¬μš©μžμ˜ κ²½ν—˜μ„ ν–₯μƒμ‹œν‚€κ³  μ‹œμŠ€ν…œμ˜ μ‚¬μš©μ„ 효율적으둜 λ„μ™€μ€λ‹ˆλ‹€.
λ‚΄λΉ„κ²Œμ΄μ…˜μ—λŠ” λ””μžμΈκ³Ό ꡬ쑰에 따라 λ‹€μ–‘ν•œ μš”μ†Œλ₯Ό 포함할 수 μžˆμ§€λ§Œ, λŒ€λΆ€λΆ„μ˜ λ‚΄λΉ„κ²Œμ΄μ…˜μ—λŠ” λ‹€μŒκ³Ό 같은 κΈ°λ³Έ μš”μ†Œλ“€μ΄ ν¬ν•¨λ©λ‹ˆλ‹€.
Β 
GNB
μ „μ—­ λ‚΄λΉ„κ²Œμ΄μ…˜ 바라고도 ν•©λ‹ˆλ‹€. μ›Ήμ‚¬μ΄νŠΈλ‚˜ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ 상단에 μœ„μΉ˜ν•˜λŠ” κ²½μš°κ°€ λ§ŽμŠ΅λ‹ˆλ‹€. 일반적으둜 μ‚¬μ΄νŠΈ 전체λ₯Ό λŒ€ν‘œν•˜λŠ” μ£Όμš” μΉ΄ν…Œκ³ λ¦¬λ‚˜ κΈ°λŠ₯듀에 λŒ€ν•œ 링크λ₯Ό ν¬ν•¨ν•©λ‹ˆλ‹€. GNBλŠ” λŒ€λΆ€λΆ„μ˜ νŽ˜μ΄μ§€μ—μ„œ μΌμ •ν•˜κ²Œ 보이며, μ‚¬μš©μžκ°€ 핡심적인 νŽ˜μ΄μ§€λ‚˜ κΈ°λŠ₯으둜 λΉ λ₯΄κ²Œ 이동할 수 μžˆλ„λ‘ λ„μ™€μ€λ‹ˆλ‹€.
Β 
LNB
지역 λ‚΄λΉ„κ²Œμ΄μ…˜ 바라고도 ν•©λ‹ˆλ‹€. 주둜 μ›Ήμ‚¬μ΄νŠΈλ‚˜ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ μ™Όμͺ½ μ‚¬μ΄λ“œλ°” ν˜•νƒœλ‘œ λ‚˜νƒ€λ‚˜λ©°, λ•Œλ‘œλŠ” 였λ₯Έμͺ½μ— μœ„μΉ˜ν•˜κΈ°λ„ ν•©λ‹ˆλ‹€. LNBλŠ” ν˜„μž¬ μ‚¬μš©μžκ°€ μœ„μΉ˜ν•œ νŽ˜μ΄μ§€λ‚˜ μ„Ήμ…˜κ³Ό κ΄€λ ¨λœ ν•˜μœ„ μΉ΄ν…Œκ³ λ¦¬λ‚˜ κΈ°λŠ₯에 λŒ€ν•œ 링크λ₯Ό ν¬ν•¨ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, β€œμƒν’ˆβ€μ΄λΌλŠ” μ£Όμš” μΉ΄ν…Œκ³ λ¦¬ 내에 β€œμ „μžμ œν’ˆβ€, β€œμ˜λ₯˜β€, β€œλ„μ„œβ€μ™€ 같은 ν•˜μœ„ μΉ΄ν…Œκ³ λ¦¬ 링크가 LNB에 포함될 수 μžˆμŠ΅λ‹ˆλ‹€.
πŸ’‘
GNB와 LNBλŠ” μ›Ήμ‚¬μ΄νŠΈλ‚˜ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ κ΅¬μ‘°μ—μ„œ 자주 λ³Ό 수 μžˆλŠ” λ‚΄λΉ„κ²Œμ΄μ…˜ μš”μ†Œλ“€μž…λ‹ˆλ‹€. GNB와 LNB λͺ¨λ‘ μ‚¬μš©μžκ°€ μ›Ήμ‚¬μ΄νŠΈλ‚˜ μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λ‚΄μ—μ„œ μ›ν•˜λŠ” μ •λ³΄λ‚˜ κΈ°λŠ₯을 μ‰½κ²Œ 찾을 수 μžˆλ„λ‘ λ„μ™€μ£ΌλŠ” 역할을 ν•©λ‹ˆλ‹€.
Β 
메뉴바(Menu Bar)
Β 
좜처: λ„€μ΄λ²„μΆœμ²˜: 넀이버
좜처: 넀이버
Β 
메뉴바(Menu Bar)λŠ” 컴퓨터 μ†Œν”„νŠΈμ›¨μ–΄ μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€μ˜ μΌλΆ€λ‘œ, ν”„λ‘œκ·Έλž¨μ˜ κΈ°λŠ₯κ³Ό μ˜΅μ…˜μ„ ν‘œμ‹œν•˜κ³  μ ‘κ·Όν•  수 있게 ν•΄μ£ΌλŠ” μˆ˜ν‰μ μΈ λ©”λ‰΄λ“€μ˜ μ§‘ν•©μž…λ‹ˆλ‹€. 주둜 μ›Ή μ‚¬μ΄νŠΈλ‚˜ μ•±μ˜ 상단 λ˜λŠ” 츑면에 μœ„μΉ˜ν•˜λ©°, λ‹€λ₯Έ νŽ˜μ΄μ§€ λ˜λŠ” μ„Ήμ…˜μœΌλ‘œ 이동할 수 μžˆλŠ” 링크λ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€.
Β 
  • 둜고 및 제λͺ© : λŒ€λΆ€λΆ„μ˜ λ‚΄λΉ„κ²Œμ΄μ…˜μ—λŠ” μ›Ήμ‚¬μ΄νŠΈλ‚˜ νšŒμ‚¬, λΈŒλžœλ“œμ˜ λ‘œκ³ λ‚˜ 제λͺ©μ΄ ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. 일반적으둜 λ‚΄λΉ„κ²Œμ΄μ…˜ λ°”μ˜ μ™Όμͺ½ 상단에 μœ„μΉ˜ν•˜λ©°, ν΄λ¦­ν•˜λ©΄ ν™ˆνŽ˜μ΄μ§€λ‘œ λŒμ•„κ°€λŠ” 링크둜 μ„€μ •λ˜λŠ” κ²½μš°κ°€ λ§ŽμŠ΅λ‹ˆλ‹€.
  • 메뉴 ν•­λͺ© : μ£Όμš” νŽ˜μ΄μ§€λ‚˜ μΉ΄ν…Œκ³ λ¦¬μ˜ 링크λ₯Ό λ‚˜μ—΄ν•œ κ²ƒμž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, "ν™ˆ", β€œμ„œλΉ„μŠ€β€, β€œμ œν’ˆβ€, β€œλΈ”λ‘œκ·Έβ€, β€œμ—°λ½μ²˜β€μ™€ 같은 ν•­λͺ©μ΄ 될 수 μžˆμŠ΅λ‹ˆλ‹€.
  • 검색 κΈ°λŠ₯ : 일뢀 λ‚΄λΉ„κ²Œμ΄μ…˜μ—λŠ” 검색 μ•„μ΄μ½˜ λ˜λŠ” 검색 ν•„λ“œκ°€ ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. μ‚¬μš©μžλŠ” μ—¬κΈ°μ—μ„œ μ›ν•˜λŠ” λ‚΄μš©μ„ 검색할 수 있으며, 검색 κ²°κ³Ό νŽ˜μ΄μ§€λ‘œ μ΄λ™ν•˜κ±°λ‚˜ ν•΄λ‹Ή λ‚΄μš©μ„ 찾을 수 μžˆμŠ΅λ‹ˆλ‹€.
  • μ•„μ΄μ½˜: μ†Œμ…œ λ―Έλ””μ–΄ 링크, μž₯λ°”κ΅¬λ‹ˆ, μ‚¬μš©μž ν”„λ‘œν•„, μ•Œλ¦Ό λ“±μ˜ κΈ°λŠ₯을 λ‚˜νƒ€λ‚΄λŠ” κ·Έλž˜ν”½ μ‹¬λ³Όμž…λ‹ˆλ‹€.
  • μ–Έμ–΄ λ˜λŠ” 지역 선택 : κΈ€λ‘œλ²Œ μ›Ήμ‚¬μ΄νŠΈμ˜ 경우, μ–Έμ–΄ λ˜λŠ” 지역 선택 메뉴λ₯Ό μ œκ³΅ν•˜μ—¬ μ‚¬μš©μžκ°€ μ„ ν˜Έν•˜λŠ” μ–Έμ–΄ λ˜λŠ” 지역을 선택할 수 있게 ν•©λ‹ˆλ‹€.
Β 
μœ„μ™€ 같은 λ‚΄λΉ„κ²Œμ΄μ…˜ μš”μ†Œμ˜ λŒ€λΆ€λΆ„ μŠ€νƒ€μΌλ§κ³Ό λ™μž‘μ€ CSS둜 적용될 수 μžˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ λ³΅μž‘ν•œ μƒν˜Έμž‘μš©μ΄λ‚˜ 동적 κΈ°λŠ₯은 μžλ°”μŠ€ν¬λ¦½νŠΈ(Javascript)λ₯Ό μ‚¬μš©ν•˜μ—¬ κ΅¬ν˜„ν•΄μ•Ό ν•©λ‹ˆλ‹€.
Β 
λ‚΄λΉ„κ²Œμ΄μ…˜ UIλ₯Ό μ„€λͺ…ν•˜κΈ° μœ„ν•΄ κ°€μž₯ λŒ€ν‘œμ μΈ λ‘œκ³ μ™€ 메뉴 ν•­λͺ©μ΄ λ“€μ–΄κ°„ λ©”λ‰΄λ°”μ˜ 기본적인 HTMLκ³Ό CSSμ½”λ“œλ₯Ό μž‘μ„±ν•΄ λ³΄κ² μŠ΅λ‹ˆλ‹€.
Β 
<body> <nav class="menu-bar"> <div class="logo"> <a href="#"> <img src="둜고.png" alt="Logo" /> 제λͺ©μ΄ λ“€μ–΄κ°ˆ κ³³μž…λ‹ˆλ‹€. </a> </div> <ul> <li><a href="#">ν™ˆ</a></li> <li><a href="#">μ„œλΉ„μŠ€</a></li> <li><a href="#">μ œν’ˆ</a></li> <li><a href="#">λΈ”λ‘œκ·Έ</a></li> <li><a href="#">μ—°λ½μ²˜</a></li> </ul> </nav> </body>
μœ„ λ©”λ‰΄λ°”μ˜ κΈ°λ³Έ κ΅¬μ‘°λŠ” μ•„λž˜μ—λ„ 계속 μ‚¬μš©λ  μ˜ˆμ •μž…λ‹ˆλ‹€. 이제 이 메뉴에 μŠ€νƒ€μΌμ„ μž…ν˜€λ³΄κ² μŠ΅λ‹ˆλ‹€.
Β 
Β 
notion imagenotion image
.menu-bar { background-color: #dad7cd; overflow: hidden; display: flex; justify-content: space-between; align-items: center; padding: 0 20px; } .menu-bar ul { list-style-type: none; margin: 0; padding: 0; display: flex; } .menu-bar li { margin-left: 15px; } .menu-bar a { color: white; text-decoration: none; padding: 10px 15px; } .menu-bar a:hover { background-color: #ddd; color: black; border-radius: 5px; }
Β 
μŠ€νƒ€μΌμ΄ κ΅¬ν˜„λœ μ΅œμ’… ν™”λ©΄μž…λ‹ˆλ‹€.
notion imagenotion image
Β 
μ‚¬μ΄λ“œ 메뉴(Side Menu)
Β 
좜처: 유튜브좜처: 유튜브
좜처: 유튜브
Β 
μ‚¬μ΄λ“œ 메뉴바(Side menu)λŠ” μ›Ήμ‚¬μ΄νŠΈ, μ• ν”Œλ¦¬μΌ€μ΄μ…˜ λ˜λŠ” 기타 μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€μ—μ„œ μ‚¬μš©λ˜λŠ” UI μš”μ†Œλ‘œ, ν™”λ©΄μ˜ ν•œμͺ½ ν…Œλ‘λ¦¬μ— μœ„μΉ˜ν•˜μ—¬ μ£Όμš” λ‚΄λΉ„κ²Œμ΄μ…˜, λΆ€κ°€ κΈ°λŠ₯, μ„€μ • 및 기타 ν•­λͺ©λ“€μ„ μ œκ³΅ν•˜λŠ” 수직적인 메뉴λ₯Ό λ§ν•©λ‹ˆλ‹€. 일반적으둜 μ™Όμͺ½μ΄λ‚˜ 였λ₯Έμͺ½μ— μœ„μΉ˜ν•˜λ©°, μ‚¬μš©μžκ°€ μ‰½κ²Œ μ•‘μ„ΈμŠ€ν•˜κ³  메뉴 ν•­λͺ©λ“€μ„ 탐색할 수 μžˆλ„λ‘ λ•μŠ΅λ‹ˆλ‹€.
Β 
좜처: 유튜브좜처: 유튜브
좜처: 유튜브
Β 
μ‚¬μ΄λ“œ λ©”λ‰΄λ°”λŠ” μ‚¬μš©μž κ²½ν—˜μ„ κ°œμ„ ν•˜κ³  효율적인 λ‚΄λΉ„κ²Œμ΄μ…˜μ„ μ œκ³΅ν•˜λŠ” 데 도움을 μ€λ‹ˆλ‹€. μ£Όμš” κΈ°λŠ₯ 및 μΉ΄ν…Œκ³ λ¦¬λŠ” 일반적으둜 μ•„μ΄μ½˜, ν…μŠ€νŠΈ λ˜λŠ” 두 가지λ₯Ό ν˜Όν•©ν•˜μ—¬ ν‘œμ‹œλ©λ‹ˆλ‹€. μ‚¬μš©μžλŠ” 메뉴λ₯Ό ν΄λ¦­ν•˜κ±°λ‚˜ ν„°μΉ˜ν•˜μ—¬ ν•΄λ‹Ή ν•­λͺ©μ— λΉ λ₯΄κ²Œ μ•‘μ„ΈμŠ€ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
/* κΈ°λ³Έ μŠ€νƒ€μΌ */ .menu-bar { position: fixed; /* μ‚¬μ΄λ“œλ°”λ₯Ό 화면에 κ³ μ • */ top: 0; left: 0; width: 250px; /* μ‚¬μ΄λ“œλ°” λ„ˆλΉ„ μ„€μ • */ height: 100%; /* ν™”λ©΄ 높이와 λ™μΌν•˜κ²Œ μ„€μ • */ background-color: #333; overflow-y: auto; /* λ‚΄μš©μ΄ μ‚¬μ΄λ“œλ°”λ₯Ό μ΄ˆκ³Όν•˜λ©΄ 슀크둀 ν‘œμ‹œ */ } .logo img { width: 100%; /* 둜고 이미지 λ„ˆλΉ„ μ„€μ • */ } ul { list-style-type: none; /* λͺ©λ‘ ν•­λͺ© μ•žμ— μžˆλŠ” 마컀 제거 */ padding: 0; } li { text-align: center; margin: 10px 0; } li a { text-decoration: none; /* 링크 밑쀄 제거 */ color: #fff; /* ν…μŠ€νŠΈ 색상 μ„€μ • */ padding: 10px 20px; /* νŒ¨λ”© μΆ”κ°€ */ display: block; /* 전체 ν•­λͺ© μ˜μ—­μ΄ 클릭할 수 μžˆλ„λ‘ μ„€μ • */ transition: background-color 0.3s; /* 배경색 μ „ν™˜ 효과 μΆ”κ°€ */ } li a:hover { background-color: #555; /* 마우슀 μ˜€λ²„ μ‹œ 배경색 λ³€κ²½ */ }
이처럼 μ‚¬μ΄λ“œ λ©”λ‰΄λ°”λŠ” μ›Ήμ‚¬μ΄νŠΈλ‚˜ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ˜ λ””μžμΈκ³Ό μ‚¬μš©μ„±μ„ κ°œμ„ ν•˜λ©°, μž‘μ€ ν™”λ©΄μ—μ„œλ„ 효과적으둜 μ‚¬μš©λ  수 μžˆμ–΄ λͺ¨λ°”일 μž₯μΉ˜μ—λ„ μ ν•©ν•©λ‹ˆλ‹€.
Β 
notion imagenotion image
Β 
/* κΈ°λ³Έ μŠ€νƒ€μΌ */ body { font-family: 'Arial', sans-serif; } .menu-bar { position: fixed; /* μ‚¬μ΄λ“œλ°”λ₯Ό 화면에 κ³ μ • */ top: 0; left: 0; width: 250px; /* μ‚¬μ΄λ“œλ°” λ„ˆλΉ„ μ„€μ • */ height: 100%; /* ν™”λ©΄ 높이와 λ™μΌν•˜κ²Œ μ„€μ • */ background-color: #333; overflow-y: auto; /* λ‚΄μš©μ΄ μ‚¬μ΄λ“œλ°”λ₯Ό μ΄ˆκ³Όν•˜λ©΄ 슀크둀 ν‘œμ‹œ */ } .logo img { width: 100%; /* 둜고 이미지 λ„ˆλΉ„ μ„€μ • */ padding: 20px; /* 둜고 μ£Όμœ„μ— νŒ¨λ”© μΆ”κ°€ */ } ul { list-style-type: none; /* λͺ©λ‘ ν•­λͺ© μ•žμ— μžˆλŠ” 마컀 제거 */ padding: 0; } li { text-align: center; margin: 10px 0; } li a { text-decoration: none; /* 링크 밑쀄 제거 */ color: #fff; /* ν…μŠ€νŠΈ 색상 μ„€μ • */ padding: 10px 20px; /* νŒ¨λ”© μΆ”κ°€ */ display: block; /* 전체 ν•­λͺ© μ˜μ—­μ΄ 클릭할 수 μžˆλ„λ‘ μ„€μ • */ transition: background-color 0.3s; /* 배경색 μ „ν™˜ 효과 μΆ”κ°€ */ } li a:hover { background-color: #555; /* 마우슀 μ˜€λ²„ μ‹œ 배경색 λ³€κ²½ */ }
Β 
λ“œλ‘­λ‹€μš΄ 메뉴(Dropdown Menu)
Β 
좜처: λ‹€μŒμΆœμ²˜: λ‹€μŒ
좜처: λ‹€μŒ
λ“œλ‘­λ‹€μš΄ 메뉴(Dropdown menu)λŠ” μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€(UI)μ—μ„œ 주둜 μ‚¬μš©λ˜λŠ” νŒμ—… μŠ€νƒ€μΌμ˜ λ©”λ‰΄λ‘œ, μ‚¬μš©μžκ°€ νŠΉμ • λ²„νŠΌ, 링크 λ˜λŠ” μ•„μ΄μ½˜μ„ ν΄λ¦­ν•˜λ©΄ νŽΌμ³μ§€λ©° μ—¬λŸ¬ 선택 사항을 λ³΄μ—¬μ€λ‹ˆλ‹€. μ‚¬μš©μžλŠ” κ·Έμ€‘μ—μ„œ μ›ν•˜λŠ” ν•­λͺ©μ„ 선택할 수 μžˆμŠ΅λ‹ˆλ‹€.
Β 
κ΅¬ν˜„μ„ μœ„ν•œ HTML μ½”λ“œλ₯Ό κ΅¬ν˜„ν•΄ 보도둝 ν•˜κ² μŠ΅λ‹ˆλ‹€. 기쑴에 있던 menu-bar 쀑 li에 dropdownκ³Ό ul에 submenuκ°€ μΆ”κ°€λ‘œ μž‘μ„±λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
<body> <nav class="menu-bar"> <div class="logo"> <a href="#"> <img src="img/logo.png" alt="Logo" /> </a> </div> <ul> <li><a href="#">ν™ˆ</a></li> <li class="dropdown"> <a href="#">μ„œλΉ„μŠ€</a> <ul class="submenu"> <li><a href="#">μ„œλΉ„μŠ€1</a></li> <li><a href="#">μ„œλΉ„μŠ€2</a></li> <li><a href="#">μ„œλΉ„μŠ€3</a></li> </ul> </li> <li><a href="#">μ œν’ˆ</a></li> <li><a href="#">λΈ”λ‘œκ·Έ</a></li> <li><a href="#">μ—°λ½μ²˜</a></li> </ul> </nav> </body>
/* κΈ°λ³Έ μŠ€νƒ€μΌ */ .menu-bar { background-color: #333; } .logo img { height: 50px; padding: 10px; } ul { list-style-type: none; padding: 0; margin: 0; } li { float: left; } li a { display: block; padding: 14px 20px; text-decoration: none; color: white; background-color: #333; transition: background-color 0.3s; } li a:hover { background-color: #555; } /* λ“œλ‘­λ‹€μš΄ 메뉴 μŠ€νƒ€μΌ */ .dropdown { position: relative; display: inline-block; } .submenu { display: none; position: absolute; top: 100%; left: 0; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); z-index: 1; } .submenu li { float: none; border-bottom: 1px solid #666; } .submenu li:last-child { border-bottom: none; } .dropdown:hover .submenu { display: block; }
λ“œλ‘­λ‹€μš΄ λ©”λ‰΄λŠ” λ‚΄λΉ„κ²Œμ΄μ…˜, μ„€μ •, 필터링, μ •λ ¬ λ“± λ‹€μ–‘ν•œ λͺ©μ μœΌλ‘œ μ‚¬μš©λ©λ‹ˆλ‹€. μ£Όμš” λ‚΄μš© μ•„λž˜μ— μˆ¨κ²¨μ§„ μ—¬λŸ¬ ν•˜μœ„ ν•­λͺ©μ„ λ‚˜νƒ€λ‚Ό λ•Œ μ‚¬μš©λ˜λ©°, 일반적으둜 메뉴 ν•­λͺ©μ„ λˆ„λ₯΄λ©΄ ν•˜μœ„ λ©”λ‰΄λ‚˜ 선택할 수 μžˆλŠ” μ˜΅μ…˜λ“€μ΄ λ‚˜νƒ€λ‚©λ‹ˆλ‹€. μ‚¬μš©μžλŠ” μ›ν•˜λŠ” ν•­λͺ©μ„ ν΄λ¦­ν•˜μ—¬ ν•΄λ‹Ή κΈ°λŠ₯을 μˆ˜ν–‰ν•˜κ±°λ‚˜ νŽ˜μ΄μ§€λ‘œ 이동할 수 μžˆμŠ΅λ‹ˆλ‹€.
Β 
notion imagenotion image
μ΄λŸ¬ν•œ λ©”λ‰΄λŠ” ν™”λ©΄ 곡간을 μ ˆμ•½ν•˜κ³  μ‚¬μš©μž κ²½ν—˜μ„ κ°œμ„ ν•˜λŠ” 데 도움을 μ£Όλ©°, λ³΅μž‘ν•œ 메뉴 ꡬ쑰λ₯Ό κ°„μ†Œν™”ν•˜μ—¬ μ‚¬μš©μžκ°€ 효율적으둜 탐색할 수 μžˆλ„λ‘ ν•©λ‹ˆλ‹€. 특히 λͺ¨λ°”일 κΈ°κΈ°λ‚˜ μž‘μ€ ν™”λ©΄μ—μ„œ μœ μš©ν•˜λ©°, ν„°μΉ˜ 기반 μΈν„°νŽ˜μ΄μŠ€μ—μ„œ 자주 μ‚¬μš©λ©λ‹ˆλ‹€.
Β 
메뉴 μ•„μ΄μ½˜
λŒ€λΆ€λΆ„μ˜ μ›Ήμ‚¬μ΄νŠΈμ™€ λͺ¨λ°”일 μ•±μ—μ„œ λ³Ό 수 μžˆλŠ” κ·Έλž˜ν”½ 기호둜, 주둜 μˆ¨κ²¨μ§„ λ‚΄λΉ„κ²Œμ΄μ…˜ λ©”λ‰΄λ‚˜ μΆ”κ°€ μ˜΅μ…˜μ„ ν‘œμ‹œν•˜κ±°λ‚˜ ν˜ΈμΆœν•˜λŠ” 데 μ‚¬μš©λ©λ‹ˆλ‹€. 이 μ•„μ΄μ½˜μ€ μ‚¬μš©μžμ—κ²Œ 좔가적인 λ©”λ‰΄λ‚˜ μ˜΅μ…˜μ— λŒ€ν•œ 접근성을 μ œκ³΅ν•˜λ©°, 특히 ν™”λ©΄ 곡간이 μ œν•œμ μΈ λͺ¨λ°”일 ν™˜κ²½μ—μ„œ 맀우 μœ μš©ν•˜κ²Œ μž‘λ™ν•©λ‹ˆλ‹€.
Β 
메뉴 μ•„μ΄μ½˜ 쀑 ν˜•νƒœλ‚˜ λͺ¨μ–‘이 νŠΉμ • μŒμ‹μ„ μ—°μƒμ‹œμΌœ 그에 κ΄€λ ¨λœ μ΄λ¦„μœΌλ‘œ 뢈리게 된 μ•„μ΄μ½˜λ“€μ΄ μžˆμŠ΅λ‹ˆλ‹€. λͺ‡λͺ‡ λŒ€ν‘œμ μœΌλ‘œ μ‚¬μš©λ˜λŠ” μ˜ˆμ‹œλŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€
Β 
  • 햄버거 메뉴 μ•„μ΄μ½˜ (Hamburger menu icon)
Β 
notion imagenotion image
Β 
κ°€μž₯ 널리 μ•Œλ €μ§„ 메뉴 μ•„μ΄μ½˜μœΌλ‘œ, μ„Έ 개의 μˆ˜ν‰ 라인으둜 κ΅¬μ„±λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. 이 μ•„μ΄μ½˜μ„ ν΄λ¦­ν•˜λ©΄ μ£Όμš” λ‚΄λΉ„κ²Œμ΄μ…˜ 메뉴가 ν‘œμ‹œλ˜λŠ” κ²½μš°κ°€ λ§ŽμŠ΅λ‹ˆλ‹€. β€˜ν–„λ²„κ±°β€™λΌλŠ” 이름은 μ•„μ΄μ½˜μ˜ λͺ¨μ–‘이 햄버거λ₯Ό μ—°μƒμ‹œν‚€κΈ° λ•Œλ¬Έμ— 뢙여진 μ΄λ¦„μž…λ‹ˆλ‹€. 주메뉴 ν•­λͺ©μ„ ν‘œμ‹œν•˜κ±°λ‚˜ μˆ¨κΈ°λŠ” κ°„λ‹¨ν•œ μΈν„°νŽ˜μ΄μŠ€μ— 주둜 μ‚¬μš©λ©λ‹ˆλ‹€.
Β 
  • λ²€ν†  메뉴 μ•„μ΄μ½˜ (Bento menu)
Β 
notion imagenotion image
Β 
λ²€ν†  메뉴 μ•„μ΄μ½˜μ˜ λ””μžμΈμ€ 일반적으둜 μ—¬λŸ¬ 개의 μž‘μ€ μ‚¬κ°ν˜• λ˜λŠ” 점듀이 κ·Έλ¦¬λ“œ νŒ¨ν„΄μœΌλ‘œ λ°°μ—΄λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. μ΄λŸ¬ν•œ μ•„μ΄μ½˜μ€ μ‚¬μš©μžμ—κ²Œ μ—¬λŸ¬ μ˜΅μ…˜ λ˜λŠ” κΈ°λŠ₯을 ν•œλˆˆμ— 보여주기 μœ„ν•΄ μ‚¬μš©λ˜λ©°, β€˜Bento’ (일본의 λ„μ‹œλ½)의 μ—¬λŸ¬ κ΅¬νšμ— μŒμ‹μ΄ λ‚˜λˆ„μ–΄μ Έ μžˆλŠ” ν˜•νƒœλ₯Ό μ—°μƒμ‹œν‚΅λ‹ˆλ‹€. 주둜 μ‚¬μš©μžμ—κ²Œ λ‹€μ–‘ν•œ κΈ°λŠ₯μ΄λ‚˜ μ˜΅μ…˜μ„ ν•œλˆˆμ— μ œκ³΅ν•˜κΈ° μœ„ν•œ μΈν„°νŽ˜μ΄μŠ€μ— μ‚¬μš©λ©λ‹ˆλ‹€.
Β 
  • μΌ€λ°₯ 메뉴 μ•„μ΄μ½˜ (Kebab menu)
Β 
notion imagenotion image
Β 
μ›Ήκ³Ό λͺ¨λ°”일 μΈν„°νŽ˜μ΄μŠ€μ—μ„œ ν”νžˆ λ³Ό 수 μžˆλŠ” λ²„ν‹°μ»¬λ‘œ 배치된 μ„Έ 개의 점 λ˜λŠ” μž‘μ€ μˆ˜ν‰μ„ μœΌλ‘œ κ΅¬μ„±λœ μ•„μ΄μ½˜μ„ λ§ν•©λ‹ˆλ‹€. 이 μ•„μ΄μ½˜μ˜ 이름은 κ·Έ λͺ¨μ–‘이 수직으둜 μŒ“μΈ μΌ€λ°₯(κ³ κΈ°λ‚˜ 야채 등을 κΌ¬μΉ˜μ— κΏ΄ μŒμ‹)을 μ—°μƒμ‹œν‚€κΈ° λ•Œλ¬Έμ— 뢙여진 κ²ƒμž…λ‹ˆλ‹€. μΌ€λ°₯ 메뉴 μ•„μ΄μ½˜μ€ 주둜 μ›Ήμ‚¬μ΄νŠΈλ‚˜ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ μΆ”κ°€ μ˜΅μ…˜, μ„€μ •, 더 λ§Žμ€ 메뉴 ν•­λͺ©μ„ ν‘œμ‹œν•˜λŠ” 데 μ‚¬μš©λ©λ‹ˆλ‹€.
Β 
  • 미트볼 메뉴 μ•„μ΄μ½˜ (Meatball menu)
Β 
notion imagenotion image
Β 
일반적으둜 μ„Έ 개의 수직으둜 λ°°μ—΄λœ μž‘μ€ μ λ“€λ‘œ ν‘œν˜„λ˜λŠ” μ•„μ΄μ½˜μ„ μ˜λ―Έν•©λ‹ˆλ‹€. 이 μ•„μ΄μ½˜μ€ 주둜 μ›Ήμ‚¬μ΄νŠΈλ‚˜ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ μΆ”κ°€ μ˜΅μ…˜, μ„€μ •, 더 λ§Žμ€ 메뉴 ν•­λͺ©μ„ ν‘œμ‹œν•˜λŠ” 데 μ‚¬μš©λ©λ‹ˆλ‹€. 미트볼 메뉴 μ•„μ΄μ½˜μ„ ν΄λ¦­ν•˜κ±°λ‚˜ νƒ­ν•˜λ©΄, κ΄€λ ¨λœ μ„œλΈŒλ©”λ‰΄λ‚˜ 좔가적인 μ˜΅μ…˜λ“€μ΄ λ“œλ‘­λ‹€μš΄ ν˜•νƒœλ‘œ λ‚˜νƒ€λ‚  수 μžˆμŠ΅λ‹ˆλ‹€.
Β 
νƒ­(Tabs)
Β 
notion imagenotion image
Β 
νƒ­(Tabs)은 μ—¬λŸ¬ μž‘μ—…μ΄λ‚˜ λ¬Έμ„œλ₯Ό 단일 μ°½ μ•ˆμ—μ„œ λ³„λ„μ˜ νŒ¨λ„λ‘œ λΆ„ν• ν•˜μ—¬ ν‘œμ‹œν•˜λŠ” UI μš”μ†Œμž…λ‹ˆλ‹€. 각 탭은 일반적으둜 κ΄€λ ¨λœ μž‘μ—…μ΄λ‚˜ λ‚΄μš©μ„ ν‘œμ‹œν•˜λ©°, μ‚¬μš©μžλŠ” ν•„μš”μ— 따라 각 νƒ­ 간에 μ „ν™˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
탭은 주둜 μ›Ή λΈŒλΌμš°μ €, ν…μŠ€νŠΈ νŽΈμ§‘κΈ°, 파일 탐색기, μ‘μš© ν”„λ‘œκ·Έλž¨ λ“±μ—μ„œ μ‚¬μš©λ©λ‹ˆλ‹€. 각 탭은 각각의 λ‚΄μš©μ„ ν‘œμ‹œν•˜λ©°, μ‚¬μš©μžλŠ” λ‹€μ–‘ν•œ μž‘μ—…μ„ 효율적으둜 κ΄€λ¦¬ν•˜κ³  μ „ν™˜ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
예λ₯Ό λ“€μ–΄, μ›Ή λΈŒλΌμš°μ €μ—μ„œ μ—¬λŸ¬ μ›Ή νŽ˜μ΄μ§€λ₯Ό νƒμƒ‰ν•˜λŠ” 경우, 각 μ›Ή νŽ˜μ΄μ§€λŠ” λ³„λ„μ˜ 탭에 ν‘œμ‹œλ©λ‹ˆλ‹€. μ΄λ ‡κ²Œ ν•¨μœΌλ‘œμ¨ μ—¬λŸ¬ μ›Ή νŽ˜μ΄μ§€λ₯Ό λ™μ‹œμ— μ—΄μ–΄λ‘˜ 수 있으며, ν•„μš”ν•  λ•Œ 각 νƒ­ 간에 μ „ν™˜ν•˜μ—¬ λ‚΄μš©μ„ ν™•μΈν•˜κ±°λ‚˜ μž‘μ—…μ„ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
탭은 μž‘μ—… νš¨μœ¨μ„±μ„ 높이고, 창을 μ΅œμ†Œν™”ν•˜κ±°λ‚˜ μ—¬λŸ¬ 창을 κ΄€λ¦¬ν•˜λŠ” λ²ˆκ±°λ‘œμ›€μ„ 쀄여주어 μ‚¬μš©μžμ—κ²Œ νŽΈμ˜μ„±μ„ μ œκ³΅ν•©λ‹ˆλ‹€.
Β 
링크(Link)
Β 
notion imagenotion image
Β 
λ§ν¬λŠ” μ›ΉνŽ˜μ΄μ§€μ—μ„œ λ‹€λ₯Έ μ›Ή νŽ˜μ΄μ§€, 파일, 이미지, λ˜λŠ” μœ„μΉ˜λ‘œ μ—°κ²°ν•˜λŠ” μ°Έμ‘°λ₯Ό κ°€λ¦¬ν‚€λŠ” μš”μ†Œλ₯Ό λ§ν•©λ‹ˆλ‹€. 이것은 μ›Ήμ—μ„œ 특히 μ€‘μš”ν•œ κ°œλ…μ΄λ©°, μΈν„°λ„·μ—μ„œ 정보λ₯Ό νƒμƒ‰ν•˜κ³  μ—°κ²°ν•˜λŠ” 데 μ‚¬μš©λ©λ‹ˆλ‹€.
Β 
사진 좜처: 무료 이미지사진 좜처: 무료 이미지
사진 좜처: 무료 이미지
Β 
λ§ν¬λŠ” 보톡 ν…μŠ€νŠΈ, 이미지, 기타 μš”μ†Œμ— 할당될 수 있으며, ν΄λ¦­ν•˜λ©΄ ν•΄λ‹Ή 링크가 μ§€μ •ν•œ μœ„μΉ˜λ‘œ μ΄λ™ν•˜κ±°λ‚˜ λ‹€λ₯Έ μž‘μ—…μ„ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
예λ₯Ό λ“€μ–΄, μ›Ή νŽ˜μ΄μ§€μ˜ κΈ€μžλ‚˜ 이미지λ₯Ό ν΄λ¦­ν•˜λ©΄ ν•΄λ‹Ή 링크가 κ°€λ¦¬ν‚€λŠ” μ›Ή νŽ˜μ΄μ§€λ‘œ μ΄λ™ν•˜κ±°λ‚˜, νŒŒμΌμ„ λ‹€μš΄λ‘œλ“œν•˜κ±°λ‚˜, λ‹€λ₯Έ λ™μž‘μ„ μˆ˜ν–‰ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이처럼 λ§ν¬λŠ” μ›Ή νŽ˜μ΄μ§€ κ°„μ˜ λ‚΄λΉ„κ²Œμ΄μ…˜μ„ μš©μ΄ν•˜κ²Œ ν•˜κ³ , 정보λ₯Ό κ³΅μœ ν•˜κ³  μ—°κ²°ν•˜μ—¬ μ›Ή λ„€νŠΈμ›Œν¬λ₯Ό ν˜•μ„±ν•˜λŠ” 데 μ€‘μš”ν•œ 역할을 ν•©λ‹ˆλ‹€.
/* κΈ°λ³Έ 링크 μŠ€νƒ€μΌ */ a { color: black; /* 링크 ν…μŠ€νŠΈ 색상 */ text-decoration: none; /* 밑쀄 제거 */ } /* 링크에 ν˜Έλ²„(마우슀λ₯Ό κ°€μ Έλ‹€ λŒ€μ—ˆμ„ λ•Œ) μŠ€νƒ€μΌ 적용 */ a:hover { color: blue; /* ν˜Έλ²„ μ‹œ ν…μŠ€νŠΈ 색상 λ³€κ²½ */ text-decoration: underline; /* 밑쀄 μΆ”κ°€ */ }
Β 

5.2 Informational components

5.2.1 툴팁(Tooltip)

컴퓨터 κ·Έλž˜ν”½ μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€μ™€ μ›Ή λ””μžμΈμ—μ„œ μ‚¬μš©λ˜λŠ” μš©μ–΄λ‘œ, μ‚¬μš©μžκ°€ 마우슀 ν¬μΈν„°λ‚˜ νŠΉμ • ν•­λͺ© μœ„λ‘œ 마우슀λ₯Ό 올리면 μž„μ‹œλ‘œ ν‘œμ‹œλ˜λŠ” μž‘μ€ ν…μŠ€νŠΈ μƒμžλ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€. 이 ν…μŠ€νŠΈ μƒμžλŠ” 보톡 μΆ”κ°€ μ •λ³΄λ‚˜ μ„€λͺ…을 μ œκ³΅ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ©λ‹ˆλ‹€.
Β 
notion imagenotion image
Β 
Β 
<div class ="tooltip">μ±… <span class ="tooltip_text"> μžμ„Έν•œ λ‚΄μš©μ€ ν΄λ¦­ν•œ ν›„ μƒμ„ΈνŽ˜μ΄μ§€μ—μ„œ ν™•μΈν•˜μ„Έμš”. </span> </div>
.tooltip{ position: relative; display: block; } .tooltip .tooltip_text{ visibility: hidden; width: 120px; text-align: center; border-radius: 6px; padding: 0px; background-color: black; color: white; position: absolute; z-index: 1; } .tooltip:hover .tooltip_text{ visibility: visible; }
Β 

5.2.2 λͺ¨λ‹¬ (Modal)

λͺ¨λ‹¬μ€ μ‚¬μš©μž μΈν„°νŽ˜μ΄μŠ€ λ””μžμΈμ—μ„œ 주둜 μ‚¬μš©λ˜λŠ” μš©μ–΄λ‘œ, 주둜 μ‚¬μš©μžμ˜ 주의λ₯Ό νŠΉμ • μ •λ³΄λ‚˜ 선택 사항에 μ§‘μ€‘μ‹œν‚€κΈ° μœ„ν•΄ μ‚¬μš©ν•˜λŠ” λŒ€ν™”μƒμžλ‚˜ μ˜€λ²„λ ˆμ΄ 창을 κ΅¬ν˜„ν•  λ•Œ μ‚¬μš©ν•©λ‹ˆλ‹€. 즉, 같은 λΈŒλΌμš°μ € λ‚΄λΆ€μ—μ„œ μƒμœ„ λ ˆμ΄μ–΄λ₯Ό λ„μš°λŠ” λ°©μ‹μž…λ‹ˆλ‹€.
λͺ¨λ‹¬μ€ ν™œμ„±ν™”λ˜λ©΄, 배경의 κΈ°λŠ₯이 μΌμ‹œμ μœΌλ‘œ λΉ„ν™œμ„±ν™”λ˜κ±°λ‚˜ νλ €μ§€κ²Œ 되며, μ΄λ•ŒΒ  μ‚¬μš©μžλŠ” Modal μ°½ μ™Έμ˜ λ‹€λ₯Έ ν™œλ™μ„ ν•  수 μ—†μŠ΅λ‹ˆλ‹€. 그리고 λͺ¨λ‹¬(Modal)은 μ€‘μš”ν•œ 정보 제곡, κ²½κ³ , 좔가적인 μž…λ ₯ μš”μ²­ λ“±μ˜ κ²½μš°μ— μ‚¬μš©λ©λ‹ˆλ‹€.
μ›Ήμ‚¬μ΄νŠΈλ‚˜ μ•±μ—μ„œ 둜그인 μ°½, μ•Œλ¦Ό, μ„€μ • λ“±μ˜ 화면이 λ³„λ„μ˜ νŒμ—… μ°½μ΄λ‚˜ μ˜€λ²„λ ˆμ΄ ν˜•μ‹μœΌλ‘œ λ‚˜νƒ€λ‚  λ•Œ 이λ₯Ό Modal이라고 λΆ€λ¦…λ‹ˆλ‹€.
Β 
notion imagenotion image
Β 

5.2.3 λ©”μ‹œμ§€ λ°•μŠ€ (message box)

λ©”μ‹œμ§€ λ°•μŠ€λΌλŠ” 곡식적인 κΈ°λŠ₯μ΄λ‚˜ κ΅¬μ„±μš”μ†ŒλŠ” μ—†μŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ λ§Žμ€ μ›Ήκ°œλ°œμžκ°€ CSSλ₯Ό μ‚¬μš©ν•˜μ—¬ λ©”μ‹œμ§€ λ°•μŠ€λ₯Ό λ””μžμΈν•˜κ³  κ΅¬ν˜„ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ λ©”μ‹œμ§€ λ°•μŠ€λŠ” 일반적으둜 μ‚¬μš©μžμ—κ²Œ μ•Œλ¦Ό, 였λ₯˜, κ²½κ³ , 정보 등을 μ „λ‹¬ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ©λ‹ˆλ‹€.
Β 
notion imagenotion image
Β 
Β 

5.3 μ‚¬μš©μž μž…λ ₯ μ˜μ—­ input

UI λ””μžμΈμ—μ„œ μ‚¬μš©μžμ—κ²Œ 정보λ₯Ό λ°›μ•„μ˜€κΈ° μœ„ν•œ μ‚¬μš©μž μž…λ ₯ μ˜μ—­μ€ 주둜 input을 ν™œμš©ν•©λ‹ˆλ‹€. input은 μ‚¬μš©μžμ—κ²Œ 데이터λ₯Ό μž…λ ₯λ°›λŠ” 곳에 μ‚¬μš©λ˜λŠ” HTML νƒœκ·Έμž…λ‹ˆλ‹€.
inputμ—λŠ” λ‹€μ–‘ν•œ type이 있고 μ›ν•˜λŠ” λ°μ΄ν„°μ˜ type이 λͺ…ν™•ν•œ 경우 μ μ ˆν•œ type을 지정해 쀌으둜써 μš°λ¦¬κ°€ μ½”λ“œλ₯Ό μž‘μ„±ν•˜κ³  λ‹€μ‹œ λ³Ό λ•ŒΒ  type을 보고 μ–΄λ–€ inputμ΄μ—ˆλŠ”μ§€ μ•Œ 수 있게 λ˜μ–΄ 가독성도 μ’‹μ•„μ§‘λ‹ˆλ‹€.
μ‚¬μš©μžμ—κ²ŒλŠ” λΈŒλΌμš°μ €μ˜ μ•„μ΄λ””λ‚˜ 이메일 등을 μ €μž₯ν•˜λŠ” μ‚¬μš©μž 편의λ₯Ό μœ„ν•œ κΈ°λŠ₯이 있고, λͺ¨λ°”μΌμ—μ„œ 데이터λ₯Ό μž…λ ₯ν•  λ•Œ type에 λ”°λ₯Έ μ μ ˆν•œ ν‚€νŒ¨λ“œ UIκ°€ λ‚˜μ˜€κ²Œ λ©λ‹ˆλ‹€.
μ μ ˆν•œ type을 μ‚¬μš©ν•˜μ—¬ 우리의 μ½”λ“œ 가독성과 μ‚¬μš©μžμ˜ νŽΈμ˜μ„±μ„ μœ„ν•΄ input νƒœκ·Έλ₯Ό μžμ„Έν•˜κ²Œ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.
Β 

5.3.1 input의 type μ’…λ₯˜

  • input type = β€œtext” : textλŠ” 일반적인 ν…μŠ€νŠΈλ₯Ό μž…λ ₯ν•  수 μžˆλŠ” μœ ν˜•μ΄ μƒμ„±λ©λ‹ˆλ‹€. μ•„λž˜λŠ” IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œtextβ€μ˜ UIμž…λ‹ˆλ‹€.
Β 
μ˜ˆμ‹œ) input type = β€œtext” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.μ˜ˆμ‹œ) input type = β€œtext” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
μ˜ˆμ‹œ) input type = β€œtext” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
Β 
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œtextβ€μ˜ UIμž…λ‹ˆλ‹€μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œtextβ€μ˜ UIμž…λ‹ˆλ‹€
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œtextβ€μ˜ UIμž…λ‹ˆλ‹€
Β 
  • input type = β€œnumber” : numberλŠ” 숫자만 μž…λ ₯ν•  수 μžˆλŠ” μœ ν˜•μ΄ μƒμ„±λ©λ‹ˆλ‹€.
μ˜ˆμ‹œ) input type = β€œnumber” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.μ˜ˆμ‹œ) input type = β€œnumber” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
μ˜ˆμ‹œ) input type = β€œnumber” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
Β 
ν‚€λ³΄λ“œμ˜ μœ„, μ•„λž˜ ν™”μ‚΄ν‘œλ‚˜ 마우슀둜 ν΄λ¦­ν•˜μ—¬ 값을 λŠ˜λ¦¬κ±°λ‚˜ 쀄일 수 μžˆλŠ” μŠ€ν…ŒνΌ ν™”μ‚΄ν‘œκ°€ μ œκ³΅λ©λ‹ˆλ‹€.
μŠ€ν…ŒνΌμ˜ μ΄ˆκΉƒκ°’μ€ 1이고, step μ†μ„±μœΌλ‘œ λŠ˜μ΄κ±°λ‚˜ 쀄일 수 μžˆλŠ” κ°’μ˜ 기쀀을 μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œnumberβ€μ˜ UIμž…λ‹ˆλ‹€.μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œnumberβ€μ˜ UIμž…λ‹ˆλ‹€.
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œnumberβ€μ˜ UIμž…λ‹ˆλ‹€.
  • input type = β€œpassword” : λΉ„λ°€λ²ˆν˜Έ μž…λ ₯을 μœ„ν•œ μœ ν˜•μž…λ‹ˆλ‹€. μž…λ ₯ν•˜κ²Œ λ˜λŠ” λ°μ΄ν„°λŠ” λ§ˆμŠ€ν‚Ή 기호둜 λ°”λ€Œμ–΄ μž…λ ₯λ©λ‹ˆλ‹€.
μ˜ˆμ‹œ) input type = β€œpassword” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.μ˜ˆμ‹œ) input type = β€œpassword” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
μ˜ˆμ‹œ) input type = β€œpassword” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
IOS의 경우 password ν‚€νŒ¨λ“œλ₯Ό μΊ‘μ³ν•˜κ²Œ 되면 ν‚€νŒ¨λ“œκ°€ 보이지 μ•Šκ²Œ λ³΄μ•ˆμ΄ 적용된 캑쳐가 λ©λ‹ˆλ‹€.
Β 
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œpasswordβ€μ˜ UIμž…λ‹ˆλ‹€.μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œpasswordβ€μ˜ UIμž…λ‹ˆλ‹€.
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œpasswordβ€μ˜ UIμž…λ‹ˆλ‹€.
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œpasswordβ€μ˜ UIμž…λ‹ˆλ‹€.μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œpasswordβ€μ˜ UIμž…λ‹ˆλ‹€.
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œpasswordβ€μ˜ UIμž…λ‹ˆλ‹€.
Β 
  • input type = β€œtel” : μ „ν™”λ²ˆν˜Έ μž…λ ₯을 μœ„ν•œ μœ ν˜•μž…λ‹ˆλ‹€.
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œtelβ€μ˜ UIμž…λ‹ˆλ‹€.μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œtelβ€μ˜ UIμž…λ‹ˆλ‹€.
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = β€œtelβ€μ˜ UIμž…λ‹ˆλ‹€.
  • input type = β€œradio” : radioλŠ” μ‚¬μš©μžμ—κ²Œ ν•„μˆ˜λ‘œ ν•˜λ‚˜μ˜ 데이터λ₯Ό μž…λ ₯λ°›μ•„μ•Ό ν•˜λŠ” 경우 μ‚¬μš©ν•©λ‹ˆλ‹€. μ˜ˆμ‹œλ‘œλŠ” νšŒμ›κ°€μž… μ‹œ 성별을 선택해야 ν•  λ•Œκ°€ μžˆμŠ΅λ‹ˆλ‹€.
radio λ²„νŠΌμ˜ λ‚΄μš©μ€ radio λ²„νŠΌμ˜ id와 <label for =β€β€œ> λ₯Ό μΌμΉ˜μ‹œμΌœ μ—°κ²°ν•©λ‹ˆλ‹€.
각 radio λ²„νŠΌμ€ 같은 name으둜 μ§€μ •ν•˜μ—¬ radio 그룹을 μ„€μ •ν•©λ‹ˆλ‹€.
<fieldset> <legend>radio λ²„νŠΌμ€ ν•œ κ°€μ§€λ§Œ 선택할 수 μžˆμŠ΅λ‹ˆλ‹€</legend> <div> <input type="radio" id="radio_one" name="radiogroup" /> <label for="radio_one">radio_one</label> </div> <div> <input type="radio" id="radio_two" name="radiogroup" /> <label for="radio_two">radio_two</label> </div> <div> <input type="radio" id="radio_three" name="radiogroup" /> <label for="radio_three">radio_three</label> </div> </fieldset>
μ˜ˆμ‹œ) input type = β€œradio” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.μ˜ˆμ‹œ) input type = β€œradio” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
μ˜ˆμ‹œ) input type = β€œradio” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
  • input type = β€œcheckbox” : checkboxλŠ” μ€‘λ³΅μœΌλ‘œ 선택이 κ°€λŠ₯ν•˜μ—¬ μ‚¬μš©μžμ—κ²Œ μ—¬λŸ¬ 데이터λ₯Ό λ°›μ•„μ•Ό ν•  λ•Œ μ‚¬μš©ν•©λ‹ˆλ‹€.
μ˜ˆμ‹œ) νšŒμ› 이용 μ•½κ΄€ (좜처: 넀이버)μ˜ˆμ‹œ) νšŒμ› 이용 μ•½κ΄€ (좜처: 넀이버)
μ˜ˆμ‹œ) νšŒμ› 이용 μ•½κ΄€ (좜처: 넀이버)
μ˜ˆμ‹œλ‘œλŠ” νšŒμ›κ°€μž…μ„ ν•  λ•Œ ν•„μˆ˜λ‘œ 선택해야 ν•˜λŠ” μ΄μš©μ•½κ΄€κ³Ό ν•„μˆ˜κ°€ μ•„λ‹Œ κ°œμΈμ •λ³΄ μˆ˜μ§‘ 및 ν—ˆμš©μ΄ μžˆμŠ΅λ‹ˆλ‹€.
radioλŠ” 같은 ν•­λͺ©μ„ ν΄λ¦­ν•˜μ—¬ 선택 ν•΄μ œκ°€ μ•ˆ λ˜μ§€λ§Œ checkboxλŠ” ν•΄μ œν•  수 μžˆμŠ΅λ‹ˆλ‹€.
μ˜ˆμ‹œ) input type = β€œcheckbox” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.μ˜ˆμ‹œ) input type = β€œcheckbox” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
μ˜ˆμ‹œ) input type = β€œcheckbox” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
  • input type = β€œbutton” : button의 ν˜•μ‹μΈ input μš”μ†Œμž…λ‹ˆλ‹€. button은 ν΄λ¦­ν•˜μ—¬λ„ νŠΉλ³„ν•œ κΈ°λŠ₯이 μ—†μŠ΅λ‹ˆλ‹€.JavaScript의 이벀트 ν•Έλ“€λŸ¬λ‘œ κΈ°λŠ₯을 μ—°κ²°ν•  λ•Œ μ‚¬μš©ν•©λ‹ˆλ‹€.
input type = β€œbutton”은 valueκ°€ μ—†μœΌλ©΄ textκ°€ μ—†λŠ” 빈 λ²„νŠΌμ΄ μƒμ„±λ©λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ)input type = β€œbuttonβ€μ˜ value 속성값이 μ§€μ •λ˜μ§€ μ•Šμ•˜μ„ λ•Œ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
  • input type = ”submit” : μ‚¬μš©μžκ°€ νΌμ—μ„œ μž‘μ„±ν•œ 데이터λ₯Ό μ„œλ²„μ—κ²Œ 전솑할 λ•Œ μ‚¬μš©λ˜λŠ” λ²„νŠΌμž…λ‹ˆλ‹€.μ˜ˆμ‹œλ‘œλŠ” λ‘œκ·ΈμΈμ„ μœ„ν•œ 아이디, λΉ„λ°€λ²ˆν˜Έλ₯Ό μž‘μ„±ν•˜κ³  둜그인 λ²„νŠΌμ„ λˆ„λ₯Ό λ•Œ 둜그인 λ²„νŠΌμ΄ submit 역할을 μˆ˜ν–‰ν•©λ‹ˆλ‹€.
value 속성에 값이 μ§€μ •λ˜μ§€ μ•ŠμœΌλ©΄ β€œμ œμΆœβ€ ν…μŠ€νŠΈκ°€ ν‘œμ‹œλ©λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) input type:”submitβ€μ˜ value 속성값이 μ§€μ •λ˜μ§€ μ•Šμ•˜μ„ λ•Œ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
  • input type = ”reset” : μ‚¬μš©μžκ°€ νΌμ—μ„œ μž‘μ„±ν•œ 데이터λ₯Ό μ›λž˜μ˜ 빈 κ°’μœΌλ‘œ μ΄ˆκΈ°ν™”ν•˜λŠ” λ²„νŠΌμž…λ‹ˆλ‹€.
value 속성에 값이 μ§€μ •λ˜μ§€ μ•ŠμœΌλ©΄ β€œμ΄ˆκΈ°ν™”β€ ν…μŠ€νŠΈκ°€ κΈ°λ³Έκ°’μž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) input type= β€œresetβ€μ˜ value 속성값이 μ§€μ •λ˜μ§€ μ•Šμ•˜μ„ λ•Œ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
  • input type = β€œimage” : 이미지λ₯Ό input type = β€œsubmit” κ³Ό 같은 κΈ°λŠ₯으둜 μ‚¬μš©ν•  수 μžˆλŠ” μœ ν˜•μž…λ‹ˆλ‹€.
  • μ΄λ―Έμ§€μ˜ κ²½λ‘œκ°€ 정해지지 μ•Šκ±°λ‚˜ μ‚¬μš©ν•˜λ˜ 이미지가 μœ μ‹€λ˜μ—ˆμ„ λ•ŒλŠ” λŒ€μ²΄ μ΄λ―Έμ§€λ‘œ λ°”λ€Œκ²Œ λ©λ‹ˆλ‹€.
<input type= "image" src="./img/이미지.png” />
src μ†μ„±μœΌλ‘œ 경둜λ₯Ό μ§€μ •ν•˜μ—¬ 이미지λ₯Ό 선택할 수 μžˆμŠ΅λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) μ΄λ―Έμ§€μ˜ κ²½λ‘œκ°€ 정해지지 μ•Šκ±°λ‚˜ μ‚¬μš©ν•˜λ˜ 이미지가 μœ μ‹€λ˜μ—ˆμ„ λ•Œμž…λ‹ˆλ‹€.
πŸ’‘
<input type = β€œsubmit ,reset , button”>Β  VSΒ  <button></button>
μ•žμ„œ λ‚˜μ—΄ν•œ submit, reset, button은 <button> νƒœκ·Έμ˜ type에도 μžˆμŠ΅λ‹ˆλ‹€. 이 λ‘˜μ€ μ–΄λ–€ 것이 λ‹€λ₯ΌκΉŒμš”? μˆ˜ν–‰ν•˜λŠ” κΈ°λŠ₯은 λ™μΌν•©λ‹ˆλ‹€.
κ·Έλ ‡μ§€λ§Œ button νƒœκ·Έμ˜ μ‚¬μš©μ„ κΆŒμœ ν•©λ‹ˆλ‹€. button νƒœκ·Έμ˜ 경우 μ—¬λŠ” νƒœκ·Έμ™€ λ‹«λŠ” νƒœκ·Έκ°€ μžˆμ–΄ 이미지λ₯Ό μ‚½μž…ν•˜λŠ” 것이 κ°€λŠ₯ν•˜μ—¬ μŠ€νƒ€μΌλ§ ν•˜κΈ°κ°€ 더 μžμœ λ‘­μŠ΅λ‹ˆλ‹€.
input νƒœκ·ΈλŠ” λ‹«λŠ” νƒœκ·Έκ°€ μ—†μ–΄ Textλ₯Ό μ‚½μž…ν•˜λ €λ©΄ value=””에 Textλ₯Ό λ„£μ–΄ λ²„νŠΌμ˜ λ‚΄μš©μ„ ν‘œμ‹œν•˜κ²Œ λ©λ‹ˆλ‹€.
  • input type = ”search” : μ‚¬μš©μžκ°€ κ²€μƒ‰ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ˜λŠ” μœ ν˜•μž…λ‹ˆλ‹€. search ν•­λͺ©μ— μž…λ ₯ν•˜κ²Œ 되면 였λ₯Έμͺ½ 끝에 reset을 μœ„ν•œ X λͺ¨μ–‘ μ•„μ΄μ½˜μ΄ ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.λͺ¨λ°”일 ν‚€λ³΄λ“œλŠ” input type = ”text”와 κ°™μŠ΅λ‹ˆλ‹€
notion imagenotion image
μ˜ˆμ‹œ) input type = β€œsearch” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅κ³ΌΒ  x λͺ¨μ–‘ μ•„μ΄μ½˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
  • input type = ”email” : μ‚¬μš©μžκ°€ email을 μž…λ ₯ν•˜λŠ” ν•­λͺ©μž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = ”email” 의 UIμž…λ‹ˆλ‹€.
  • input type = ”url” : μ‚¬μš©μžκ°€ μ›Ή μ£Όμ†Œλ₯Ό μž…λ ₯ν•˜λŠ” ν•­λͺ©μž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = ”url” 의 UIμž…λ‹ˆλ‹€.
  • input type = ”file” : μ‚¬μš©μžκ°€ νŒŒμΌμ„ μ—…λ‘œλ“œ ν•  수 μžˆλŠ” μž…λ ₯ ν•„λ“œμž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) input type = β€œfile” ν•„λ“œμ— 파일이 μ„ νƒλ˜μ§€ μ•Šμ•˜μ„ λ•Œ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
  • input type = ”date” : λ‚ μ§œλ₯Ό μž…λ ₯ν•˜λŠ” ν•­λͺ©μœΌλ‘œ ν΄λ¦­ν•˜λ©΄ λ‚ μ§œλ₯Ό 선택할 수 μžˆλŠ” μœ„μ ―μ΄ λ‚˜μ˜΅λ‹ˆλ‹€.
이 μœ„μ ―μ€ 연도, μ›”, 일을 선택 ν•  수 있고, λΈŒλΌμš°μ €λ§ˆλ‹€ λ””μžμΈμ΄ λ‹€λ¦…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) input type= ”dateβ€μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type= β€œdate” 의 UIμž…λ‹ˆλ‹€.
  • input type = ”datetime-local” : date와 같이 λ‚ μ§œλ₯Ό μž…λ ₯ν•˜κ³  μΆ”κ°€λ‘œ μ˜€μ „, μ˜€ν›„μ™€ μ‹œ, 뢄을 μž…λ ₯ν•  수 μžˆλŠ” ν•­λͺ©μž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) input type= ”datetime-local” μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = ”datetime-local” 의  UIμž…λ‹ˆλ‹€.
  • input type = ”month” : 연도와 μ›”μ˜ λ‚ μ§œλ§Œ μž…λ ₯ν•  수 μžˆλŠ” ν•­λͺ©μž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) input type= ”monthβ€μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = ”monthβ€μ˜ UIμž…λ‹ˆλ‹€.
  • input type = ”time” : μ˜€μ „, μ˜€ν›„μ™€ μ‹œ, 뢄을 μž…λ ₯ν•  수 μžˆλŠ” ν•­λͺ©μž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) input type= ”timeβ€μš”μ†Œκ°€ λΈŒλΌμš°μ €μ— λ Œλ”λ§ 된 λͺ¨μŠ΅μ˜ μ˜ˆμ‹œμž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = ”timeβ€μ˜ UIμž…λ‹ˆλ‹€.
  • input type = ”color” : 색상을 선택할 수 μžˆλŠ” μœ„μ ―μ΄ λ‚˜μ˜΅λ‹ˆλ‹€.
μŠ€ν¬μ΄λ“œ λͺ¨μ–‘μ˜ μ•„μ΄μ½˜μ„ ν΄λ¦­ν•˜λ©΄ λ‹€λ₯Έ μš”μ†Œμ˜ 색상을 μ•Œ 수 있고 선택도 κ°€λŠ₯ν•©λ‹ˆλ‹€.
notion imagenotion image
notion imagenotion image
μ˜ˆμ‹œ) input type= β€œcolor”λ₯Ό ν΄λ¦­ν•˜κΈ° μ „κ³Ό ν›„ μ΄λ―Έμ§€μž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) IOSμ—μ„œ λ³΄μ΄λŠ” input type = ”colorβ€μ˜ UIμž…λ‹ˆλ‹€.
  • input type = ”range” : λ³Όλ₯¨ μ‘°μ ˆμ΄λ‚˜ 밝기 쑰절 λ“±μ—μ„œ 많이 λ³Έ μŠ¬λΌμ΄λ”κ°€ λ‚˜νƒ€λ‚©λ‹ˆλ‹€. μ •ν™•ν•œ 값이 ν•„μš”ν•˜μ§€ μ•Šμ€ κ²½μš°μ— μ‚¬μš©λ©λ‹ˆλ‹€.
minκ³Ό max둜 μŠ¬λΌμ΄λ”μ˜ μ΅œμ†Œκ°’κ³Ό μ΅œλŒ€κ°’μ„ 지정할 수 있고 step으둜 μŠ¬λΌμ΄λ”μ˜ 간격을 지정할 수 μžˆμŠ΅λ‹ˆλ‹€.
valueλŠ” μ΄ˆκΈ°μ— 섀정될 μŠ¬λΌμ΄λ”μ˜ μœ„μΉ˜κ°’μ„ μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) input type = β€œrangeβ€μ˜ μŠ¬λΌμ΄λ” μ˜ˆμ‹œμž…λ‹ˆλ‹€.
  • input type = ”hidden” : 이 ν•­λͺ©μ€ μ‚¬μš©μžμ—κ²Œ 보이지 μ•ŠλŠ” ν•­λͺ©μž…λ‹ˆλ‹€. 이 ν•­λͺ©μ€ μ‚¬μš©μžκ°€ form의 μž…λ ₯ 사항을 λͺ¨λ‘ μž…λ ₯ν•˜κ³  μ œμΆœν•  λ•Œ ν¬ν•¨λ˜μ–΄μ•Ό ν•˜λŠ” λ‹€λ₯Έ 값듀을 κ°œλ°œμžκ°€ ν¬ν•¨ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ˜λŠ” ν•­λͺ©μž…λ‹ˆλ‹€.

5.3.2 input의 곡톡 속성

  • readonly : textλ₯Ό μž…λ ₯ν•  수 μžˆλŠ” input에 이 속성을 μ€€λ‹€λ©΄ 클릭은 κ°€λŠ₯ν•˜μ§€λ§Œ, text μž…λ ₯을 ν•  수 μ—†μŠ΅λ‹ˆλ‹€.
  • required : ν•„μˆ˜λ‘œ ν•΄λ‹Ή ν•­λͺ©μ„ μž…λ ₯ν•΄μ•Ό Form μ–‘μ‹μ˜ 제좜이 κ°€λŠ₯ν•©λ‹ˆλ‹€.
  • placeholder : μ‚¬μš©μžκ°€ μž…λ ₯ν•΄μ•Ό ν•  λ‚΄μš©μ— λŒ€ν•΄ 힌트λ₯Ό ν‘œμ‹œν•΄ μ£ΌλŠ” κΈ°λŠ₯μž…λ‹ˆλ‹€.
notion imagenotion image
μ˜ˆμ‹œ) placeholder에 β€œIDλ₯Ό μž…λ ₯ν•΄ μ£Όμ„Έμš”β€λ₯Ό μž…λ ₯ν–ˆμ„ λ•Œ μ΄λ―Έμ§€μž…λ‹ˆλ‹€.
  • autocomplete : λ‘œκ·ΈμΈν•  λ•Œ μžλ™μ™„μ„±μœΌλ‘œ λΉ λ₯΄κ²Œ λ‘œκ·ΈμΈν–ˆλ˜ κ²½ν—˜μ΄ μžˆμ„ κ²λ‹ˆλ‹€. 이 속성은 textλ₯Ό μž…λ ₯ν•  수 μžˆλŠ” input의 μžλ™μ™„μ„±μ„ ν—ˆμš©ν•©λ‹ˆλ‹€.
속성값은 onκ³Ό off둜 κΈ°λŠ₯ ν™œμ„±ν™”/λΉ„ν™œμ„±ν™”ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • value : textλ₯Ό μž…λ ₯ν•  수 μžˆλŠ” input에 valueλ₯Ό μ§€μ •ν•˜λ©΄ μ§€μ •ν•œ textκ°€ μ΄ˆκΈ°κ°’μœΌλ‘œ ν¬ν•¨λ©λ‹ˆλ‹€.
button:type의 valueλŠ” button의 textκ°€ μ„€μ •λ©λ‹ˆλ‹€.
value의 값은 μ„œλ²„μ—κ²Œ 같이 μ „λ‹¬λ˜μ–΄ μ„œλ²„λŠ” 전달받은 ν•­λͺ©μ΄ μ–΄λ–€ valueλ₯Ό κ°€μ‘ŒλŠ”μ§€
확인 ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
  • name : ν•­λͺ©μ— 고유 이름을 μ„€μ •ν•΄ μ€λ‹ˆλ‹€. 이 name은 radio μ˜ˆμ‹œμ™€ 같이 각각의 μž…λ ₯ ν•„λ“œλ₯Ό 같은 name을 지정해 μ£Όμ–΄ 그룹을 지어쀄 λ•Œ μ‚¬μš©λ©λ‹ˆλ‹€.
  • size : input ν•­λͺ©μ˜ 크기λ₯Ό 숫자둜 μ‘°μ • κ°€λŠ₯ν•©λ‹ˆλ‹€
  • disabled : 속성을 μ€€ ν•­λͺ©μ΄ λΉ„ν™œμ„±ν™” μƒνƒœκ°€ λ©λ‹ˆλ‹€. λ˜ν•œ Form 양식을 μ œμΆœν•˜μ—¬λ„ disabled ν•΄λ‹Ή 속성은 μ œμΆœλ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
  • autofocus : νŽ˜μ΄μ§€ λ Œλ”λ§ ν›„ autofocus κ°€ 적용된 input μš”μ†Œμ— 마우슀 클릭 없이 λ°”λ‘œ μž…λ ₯이 κ°€λŠ₯ν•˜κ²Œ focusκ°€ μ΄λ™ν•©λ‹ˆλ‹€.
  • maxlength : μ μš©ν•œ ν•­λͺ©μ˜ μ΅œλŒ€ κΈ€μž 수λ₯Ό μ •ν•΄μ£ΌλŠ” κΈ°λŠ₯μž…λ‹ˆλ‹€.
  • minlength : μ μš©ν•œ ν•­λͺ©μ˜ μ΅œμ†Œ κΈ€μž 수λ₯Ό μ •ν•΄μ£ΌλŠ” κΈ°λŠ₯μž…λ‹ˆλ‹€.
  • min : numberμ—μ„œ μ‚¬μš©λ˜λ©° 10을 μž…λ ₯ν•œλ‹€λ©΄ 10보닀 μž‘μ€ 값은 넣을 수 μ—†μŠ΅λ‹ˆλ‹€.
  • max : numberμ—μ„œ μ‚¬μš©λ˜λ©° 20을 μž…λ ₯ν•œλ‹€λ©΄ 20보닀 큰 값은 넣을 수 μ—†μŠ΅λ‹ˆλ‹€.
  • step : number의 μŠ€ν…ŒνΌ ν™”μ‚΄ν‘œλ‘œ 움직일 숫자의 크기λ₯Ό μ§€μ •ν•˜λŠ” μ†μ„±μž…λ‹ˆλ‹€.
  • checked : checkbox와 radio에 μ‚¬μš©ν•  수 μžˆλŠ” μ†μ„±μœΌλ‘œ νŽ˜μ΄μ§€κ°€ 졜초 λ Œλ”λ§μ΄ λ˜μ—ˆμ„ λ•Œ 체크가 λ˜μ–΄μžˆκ²Œ ν•©λ‹ˆλ‹€.
  • accept : fileμ—μ„œ μ‚¬μš©λ˜λŠ” μ†μ„±μž…λ‹ˆλ‹€. 이 속성은 μ‚¬μš©μžκ°€ νŒŒμΌμ„ μ—…λ‘œλ“œ ν•  λ•Œ 파일의 ν™•μž₯자λ₯Ό 지정해 μ€λ‹ˆλ‹€. μ‰Όν‘œλ‘œ ꡬ뢄해 μ£Όμ–΄ μ—¬λŸ¬ 개λ₯Ό 지정할 μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.
  • multiple : fileμ—μ„œ μ‚¬μš©λ˜λŠ” μ†μ„±μž…λ‹ˆλ‹€. μ‚¬μš©μžκ°€ νŒŒμΌμ„ μ—…λ‘œλ“œν•  λ•Œ μ—¬λŸ¬ νŒŒμΌμ„ ν•œ λ²ˆμ— μ—…λ‘œλ“œν•  λ•Œ μ‚¬μš©λ©λ‹ˆλ‹€.
Β 
Β 
Β