🧱 BEM 방법둠: HTML/CSSλ₯Ό 효율적으둜 κ΄€λ¦¬ν•˜λŠ” 이름 μ§“κΈ°μ˜ λ§ˆλ²•
Β·
After. 2025
ν”„λ‘ νŠΈμ—”λ“œ κ°œλ°œμ—μ„œ κ°€μž₯ μ€‘μš”ν•œ 것 쀑 ν•˜λ‚˜λŠ” μœ μ§€λ³΄μˆ˜μ„±μ΄ 높은 μ½”λ“œλ₯Ό μž‘μ„±ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. ν”„λ‘œμ νŠΈ 규λͺ¨κ°€ 컀질수둝 CSS μ½”λ“œλŠ” λ³΅μž‘ν•΄μ§€κ³ , 클래슀 이름 μΆ©λŒμ΄λ‚˜ μ˜λ„μΉ˜ μ•Šμ€ μŠ€νƒ€μΌ 변경이 λΉˆλ²ˆν•˜κ²Œ λ°œμƒν•©λ‹ˆλ‹€.μ΄λŸ¬λŸ¬ν•œ 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ λ“±μž₯ν•œ 것이 λ°”λ‘œ BEM(Block, Element, Modifier) λ°©λ²•λ‘ μž…λ‹ˆλ‹€. BEM은 λͺ…ν™•ν•˜κ³  ꡬ쑰적인 이름 κ·œμΉ™μ„ μ œκ³΅ν•˜μ—¬ CSSλ₯Ό 효율적으둜 관리할 수 있게 λ•μŠ΅λ‹ˆλ‹€.1. BEM μ΄λž€ 무엇인가?BEM은 Block(블둝), Element(μš”μ†Œ), Modifier(μˆ˜μ •μž) μ„Έ κ°€μ§€ 핡심 κ°œλ…μœΌλ‘œ CSS 클래슀 이름을 κ΅¬μ„±ν•˜λŠ” λ°©λ²•λ‘ μž…λ‹ˆλ‹€. 이 ꡬ쑰λ₯Ό 톡해 클래슀 μ΄λ¦„λ§Œ 보더라도 ν•΄λ‹Ή HTML μš”μ†Œκ°€ μ–΄λ–€ 역할을 ν•˜κ³  μ–΄λ–€ μœ„μΉ˜μ— μžˆλŠ”μ§€ μ§κ΄€μ μœΌλ‘œ νŒŒμ•…ν•  수 ..
🧐 κΈ°λŠ₯ λͺ…μ„Έμ„œμ™€ ν”„λ‘œν† νƒ€μ΄ν•‘ 심측 ν•΄λΆ€
Β·
After. 2025
ν”„λ‘ νŠΈμ—”λ“œ·UX/UI ν˜‘μ—…μ—μ„œ κ°€μž₯ 큰 μ˜€ν•΄κ°€ μƒκΈ°λŠ” 지점이 λ°”λ‘œ “무엇을 μ–΄λ–»κ²Œ λ§Œλ“€ 것인가?”λ₯Ό λͺ…ν™•νžˆ λͺ» 작고 κ°€λŠ” μƒν™©μž…λ‹ˆλ‹€.이걸 κΉ”λ”ν•˜κ²Œ ν•΄κ²°ν•΄μ£ΌλŠ” 도ꡬ가 λ°”λ‘œ "κΈ°λŠ₯ λͺ…μ„Έμ„œ(Function Specification) 와 ν”„λ‘œν† νƒ€μ΄ν•‘(Prototyping)" μž…λ‹ˆλ‹€. 1. κΈ°λŠ₯ λͺ…μ„Έμ„œ (FSS: Functional Specification Sheet) πŸ“‘κΈ°λŠ₯ λͺ…μ„Έμ„œλŠ” μŠ€ν† λ¦¬λ³΄λ“œλ₯Ό λ°”νƒ•μœΌλ‘œ κ°œλ°œμžκ°€ μ½”λ“œλ₯Ό μž‘μ„±ν•˜κΈ° μœ„ν•΄ ν•„μš”ν•œ λͺ¨λ“  상세 κΈ°λŠ₯κ³Ό λ‘œμ§μ„ λ¬Έμ„œν™”ν•˜λŠ” μž‘μ—…μž…λ‹ˆλ‹€. μ‚¬μš©μžμ™€ μ‹œμŠ€ν…œ κ°„μ˜ μƒν˜Έ μž‘μš©μ„ 'μ–΄λ–»κ²Œ' κ΅¬ν˜„ν•  것인지에 λŒ€ν•œ 기술적인 κ°€μ΄λ“œλΌμΈμ΄λΌκ³  ν•  수 μžˆμŠ΅λ‹ˆλ‹€.νŠΉμ§•μ„€λͺ…λͺ©μ κΈ°λŠ₯의 상세 μž‘λ™ 방식과 λ‚΄λΆ€ 둜직 μ •μ˜ (개발자 λŒ€μƒ)ν•΅μ‹¬μ‹œμŠ€ν…œμ˜ μž…λ ₯(Input)에 λŒ€ν•œ 좜λ ₯(Outp..
UX/UI 기획의 핡심 λ¬Έμ„œ 3κ°€μ§€: κΈ°νšμžκ°€ λ°˜λ“œμ‹œ μ•Œμ•„μ•Ό ν•  것듀과 μΆ”μ²œ 툴
Β·
After. 2025
곡적인 λ””μ§€ν„Έ ν”„λ‘œλ•νŠΈ(μ›Ή/μ•±)λŠ” νƒ„νƒ„ν•œ 기획 λ¬Έμ„œμ—μ„œ μ‹œμž‘λ©λ‹ˆλ‹€. 기획 λ‹¨κ³„μ—μ„œ μž‘μ„±ν•˜λŠ” λ¬Έμ„œλ“€μ€ κ°œλ°œνŒ€κ³Ό λ””μžμΈνŒ€μ˜ λ‚˜μΉ¨λ°˜ 역할을 ν•˜λ©°, ν”„λ‘œμ νŠΈμ˜ λ°©ν–₯성을 μ œμ‹œν•©λ‹ˆλ‹€.이번 κΈ€μ—μ„œλŠ” κΈ°νšμžκ°€ ν”„λ‘œμ νŠΈλ₯Ό μ‹œμž‘ν•  λ•Œ λ°˜λ“œμ‹œ μ€€λΉ„ν•΄μ•Ό ν•  핡심 λ¬Έμ„œ 3가지와 ν•¨κ»˜, 각 λ¬Έμ„œ μ œμž‘ λ‹¨κ³„μ—μ„œ ν™œμš©ν•˜κΈ° 쒋은 μΆ”μ²œ νˆ΄μ„ μ†Œκ°œ λ“œλ¦½λ‹ˆλ‹€.1. μš”κ΅¬μ‚¬ν•­ μ •μ˜μ„œ (SRS: Software Requirements Specification) πŸ“μš”κ΅¬μ‚¬ν•­ μ •μ˜μ„œλŠ” μ„œλΉ„μŠ€κ°€ '무엇을 ν•΄μ•Ό ν•˜λŠ”μ§€'에 λŒ€ν•œ λͺ¨λ“  μš”κ΅¬μ‚¬ν•­μ„ μ²΄κ³„μ μœΌλ‘œ μ •λ¦¬ν•œ λ¬Έμ„œμž…λ‹ˆλ‹€. ν”„λ‘œμ νŠΈμ˜ λͺ©ν‘œμ™€ λ²”μœ„, κΈ°λŠ₯적/λΉ„κΈ°λŠ₯적 μš”κ΅¬μ‚¬ν•­μ„ λͺ…ν™•νžˆ μ •μ˜ν•˜μ—¬ ν”„λ‘œμ νŠΈ μ΄ˆκΈ°μ— λͺ¨λ“  μ΄ν•΄κ΄€κ³„μžκ°€ ν•©μ˜ν•  수 μžˆλ„λ‘ λ•μŠ΅λ‹ˆλ‹€.μš”κ΅¬μ‚¬ν•­ μ •μ˜μ„œμ˜ μ£Όμš” 포함 λ‚΄μš©ν”„λ‘œμ νŠΈ κ°œμš” 및 λͺ©..
μ™€μ΄μ–΄ν”„λ ˆμž„ VS μŠ€ν† λ¦¬λ³΄λ“œ ν™ˆνŽ˜μ΄μ§€ 기획의 핡심 차이!
Β·
After. 2025
μ›Ήμ‚¬μ΄νŠΈλ‚˜ μ• ν”Œλ¦¬μΌ€μ΄μ…˜(μ•±)을 κ°œλ°œν•  λ•Œ, 건물을 μ§“κΈ° μ „ μ„€κ³„λ„μ²˜λŸΌ 기획 λ‹¨κ³„μ—μ„œ κΌ­ ν•„μš”ν•œ 두 κ°€μ§€ 핡심 도ꡬ가 μžˆμŠ΅λ‹ˆλ‹€. λ°”λ‘œ μ™€μ΄μ–΄ν”„λ ˆμž„(Wireframe)κ³Ό μŠ€ν† λ¦¬λ³΄λ“œ(Storyboard)μž…λ‹ˆλ‹€. 이 두 κ°€μ§€λŠ” μ’…μ’… ν˜Όλ™λ˜κΈ°λ„ ν•˜μ§€λ§Œ, λͺ…ν™•ν•œ μ—­ν• κ³Ό λͺ©μ μ„ κ°€μ§€κ³  ν”„λ‘œμ νŠΈμ˜ 성곡을 μ΄λ„λŠ” μ€‘μš”ν•œ μš”μ†Œλ“€μž…λ‹ˆλ‹€.1. μ™€μ΄μ–΄ν”„λ ˆμž„ (Wireframe) μ΄λž€? πŸ—οΈμ™€μ΄μ–΄ν”„λ ˆμž„μ€ μ›ΉνŽ˜μ΄μ§€λ‚˜ μ•± ν™”λ©΄μ˜ λΌˆλŒ€(ꡬ쑰)λ₯Ό μ„€κ³„ν•˜λŠ” μž‘μ—…μž…λ‹ˆλ‹€. 말 κ·ΈλŒ€λ‘œ 철사(Wire)둜 ν‹€(Frame)을 μž‘λŠ” 것과 κ°™μŠ΅λ‹ˆλ‹€.νŠΉμ§•λ‚΄μš©λͺ©μ ν™”λ©΄μ˜ ꡬ쑰, λ ˆμ΄μ•„μ›ƒ, 정보 배치λ₯Ό μ •μ˜ν•΅μ‹¬'무엇이' 어디에 μœ„μΉ˜ν•  것인가 (What goes where)포함 μš”μ†Œν—€λ”, ν‘Έν„°, λ²„νŠΌ, 이미지 μ˜μ—­, ν…μŠ€νŠΈ 블둝 λ“± κΈ°λŠ₯적 μš”μ†Œμ˜ μœ„μΉ˜μ™€ 크기..
::highlight 가상 μš”μ†Œμ˜ λ“±μž₯! CSS Custom Highlight API둜 ν…μŠ€νŠΈ κ°•μ‘°λ₯Ό ν˜μ‹ ν•˜λ‹€
Β·
w. Gemini
기쑴에 μ›Ήμ—μ„œ νŠΉμ • ν…μŠ€νŠΈλ₯Ό κ°•μ‘°(ν•˜μ΄λΌμ΄νŠΈ)ν•˜λ €λ©΄, ν•΄λ‹Ή ν…μŠ€νŠΈλ₯Ό μ΄λ‚˜ νƒœκ·Έλ‘œ 감싸고 클래슀λ₯Ό λΆ€μ—¬ν•œ λ’€ CSSλ₯Ό μ μš©ν•΄μ•Ό ν–ˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” DOM ꡬ쑰λ₯Ό λ³΅μž‘ν•˜κ²Œ λ§Œλ“€κ³  μ„±λŠ₯ μ €ν•˜μ˜ 원인이 될 수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€.CSS Custom Highlight APIλŠ” DOM을 μ‘°μž‘ν•˜μ§€ μ•Šκ³  였직 Javascript와 Css만으둜 ν…μŠ€νŠΈ λ²”μœ„μ— μŠ€νƒ€μΌμ„ μ μš©ν•˜λŠ” μƒˆλ‘œμš΄ ν‘œμ€€μ„ μ œμ‹œν•©λ‹ˆλ‹€. 1. μ™œ Custom Highlight APIλ₯Ό μ‚¬μš©ν•΄μ•Ό ν• κΉŒ?μž₯점섀λͺ…DOM 독립성 & μ„±λŠ₯ν…μŠ€νŠΈ κ°•μ‘°λ₯Ό μœ„ν•΄ HTML νƒœκ·Έλ₯Ό μ‚½μž…ν•  ν•„μš”κ°€ μ—†μŠ΅λ‹ˆλ‹€. DOM μ‘°μž‘μ„ μ΅œμ†Œν™”ν•˜μ—¬ λ Œλ”λ§ μ„±λŠ₯이 ν–₯μƒλ˜κ³  νŽ˜μ΄μ§€ λ‘œλ”© 속도가 λΉ¨λΌμ§‘λ‹ˆλ‹€.λ³΅μž‘ν•œ λ²”μœ„ μ²˜λ¦¬μ—¬λŸ¬ 개의 ν…μŠ€νŠΈ λ²”μœ„λ‚˜, DOM λ…Έλ“œλ₯Ό κ°€λ‘œμ§€λ₯΄λŠ” λ²”μœ„λ₯Ό ν•˜λ‚˜μ˜ ν•˜μ΄λΌμ΄νŠΈλ‘œ μ‰½κ²Œ ..