포λ₯΄μ‰ μ „κΈ°μ°¨ λͺ¨λΈ μ†Œκ°œ: μΈν„°λž™ν‹°λΈŒ μ›Ή λ””μžμΈμ„ ν†΅ν•œ μ‚¬μš©μž κ²½ν—˜ ν–₯상

2023. 11. 21. 23:14ㆍDevelopmentπŸ‘©πŸ»‍🦳/Dynamic Web

 

 

ν¬μŠ€νŒ… μ œλͺ©: "포λ₯΄μ‰ μ „κΈ°μ°¨ λͺ¨λΈ μ†Œκ°œ: μΈν„°λž™ν‹°λΈŒ μ›Ή λ””μžμΈμ„ ν†΅ν•œ μ‚¬μš©μž κ²½ν—˜ ν–₯상"

 

 


μ•ˆλ…•ν•˜μ„Έμš”! μ˜€λŠ˜μ€ μ›Ήμ‚¬μ΄νŠΈμ— λ…νŠΉν•˜κ³  μΈν„°λž™ν‹°λΈŒν•œ μ‚¬μš©μž κ²½ν—˜μ„ μ œκ³΅ν•˜λŠ” λ°©λ²•μ— λŒ€ν•΄ μ΄μ•ΌκΈ°ν•˜κ³ μž ν•©λ‹ˆλ‹€. 

특히, ν¬λ₯΄μ‰ μ „κΈ°μ°¨ λͺ¨λΈ μ†Œκ°œ νŽ˜μ΄μ§€λ₯Ό μ˜ˆλ‘œ λ“€μ–΄, 

μ΄λŸ¬ν•œ λ””μžμΈμ΄ μ–΄λ–»κ²Œ μ‚¬μš©μž κ²½ν—˜(UX)을 ν–₯μƒμ‹œν‚¬ μˆ˜ μžˆλŠ”지 νƒκ΅¬ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€.

UX의 μž₯점


μ‹œκ°μ  λ§€λ ₯κ³Ό λͺ°μž…감: ν¬λ₯΄μ‰μ˜ μ „κΈ°μ°¨ λͺ¨λΈλ“€μ„ μ†Œκ°œν•˜λŠ” μ„Ήμ…˜μ€ κ°•λ ¬ν•˜κ³  λ§€λ ₯적인 μ‹œκ°μ  μš”μ†Œλ‘œ κ΅¬μ„±λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” μ‚¬μš©μžμ˜ μ£Όμ˜λ₯Ό λŒκ³  μ œν’ˆμ— λŒ€ν•œ κ΄€μ‹¬μ„ μœ λ„ν•©λ‹ˆλ‹€.

μΈν„°λž™ν‹°λΈŒν•œ μš”μ†Œ: Swiper λΌμ΄λΈŒλŸ¬λ¦¬λ₯Ό μ‚¬μš©ν•œ μŠ¬λΌμ΄λ”λŠ” μ‚¬μš©μžκ°€ λ‹€μ–‘ν•œ λͺ¨λΈμ„ μ‰½κ²Œ νƒμƒ‰ν•  μˆ˜ μžˆκ²Œ ν•΄μ€λ‹ˆλ‹€. 

μ΄λŠ” μ‚¬μš©μžκ°€ μ›Ήμ‚¬μ΄νŠΈμ™€ λŠ₯λ™μ μœΌλ‘œ μƒν˜Έμž‘μš©ν•  μˆ˜ μžˆλŠ” κΈ°νšŒλ₯Ό μ œκ³΅ν•©λ‹ˆλ‹€.

λͺ…ν™•ν•œ μ •λ³΄ μ œκ³΅: κ° μ°¨λŸ‰μ˜ κΈ°λ³Έ μ •λ³΄μ™€ κ°€κ²©μ„ κΉ”λ”ν•˜κ²Œ λ°°μ—΄ν•¨μœΌλ‘œμ¨, μ‚¬μš©μžκ°€ ν•„μš”ν•œ μ •λ³΄λ₯Ό λΉ λ₯΄κ³  μ‰½κ²Œ μ–»μ„ μˆ˜ μžˆλ„둝 λ•μŠ΅λ‹ˆλ‹€.


html Copy code


이 HTML κ΅¬μ‘°λŠ” Swiper λΌμ΄λΈŒλŸ¬λ¦¬λ₯Ό ν™œμš©ν•˜μ—¬ κ° ν¬λ₯΄μ‰ μ „κΈ°μ°¨ λͺ¨λΈμ„ μŠ¬λΌμ΄λ“œ ν˜•νƒœλ‘œ λ³΄μ—¬μ€λ‹ˆλ‹€. μ‚¬μš©μžλŠ” μ’Œμš°λ‘œ μŠ€μ™€μ΄ν”„ν•˜λ©° λ‹€μ–‘ν•œ λͺ¨λΈμ„ ν™•μΈν•  μˆ˜ μžˆμŠ΅λ‹ˆλ‹€.



css
Copy code
.popular__card:hover .popular__img {
  transform: translateY(-0.25rem);
}


CSSμ—μ„œλŠ” .popular__card에 λ§ˆμš°μŠ€λ₯Ό ν˜Έλ²„ν•  λ•Œ .popular__img μ΄λ―Έμ§€κ°€ μ•½κ°„ μœ„λ‘œ μ΄λ™ν•˜λ„둝 νš¨κ³Όλ₯Ό μ£Όμ–΄, μ‚¬μš©μžμ—κ²Œ μ‹œκ°μ μΈ ν”Όλ“œλ°±μ„ μ œκ³΅ν•©λ‹ˆλ‹€.

λ™μ˜μƒ μ°Έκ³ ν•΄μ£Όμ„Έμš”

javascript
Copy code
let swiperPopular = new Swiper(".popular__container", {
    loop: true,
    slidesPerView: 'auto',
    grabCursor: true,
    pagination: { el: ".swiper-pagination", dynamicBullets: true },
    // λ°˜μ‘ν˜• 브레이크포인트 μ„€μ •
    breakpoints: { /* μ€‘λž΅ */ },
});


JavaScriptμ—μ„œλŠ” Swiper λΌμ΄λΈŒλŸ¬λ¦¬λ₯Ό μ΄ˆκΈ°ν™”ν•˜μ—¬ μŠ¬λΌμ΄λ”μ˜ λ™μž‘을 μ œμ–΄ν•©λ‹ˆλ‹€. μ΄ μŠ€ν¬λ¦½νŠΈλŠ” μŠ¬λΌμ΄λ”μ˜ λ£¨ν”„, μŠ¬λΌμ΄λ“œ μˆ˜, νŽ˜μ΄μ§• λ“±μ„ μ„€μ •ν•˜λ©°, λ°˜μ‘ν˜• λ ˆμ΄μ•„웃을 μœ„ν•œ λΈŒλ ˆμ΄ν¬ν¬μΈνŠΈλ„ ν¬ν•¨ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

κ²°λ‘ 
μ΄λ ‡κ²Œ μΈν„°λž™ν‹°λΈŒν•œ μ›Ή λ””μžμΈ μš”μ†ŒλŠ” μ‚¬μš©μž κ²½ν—˜μ„ ν¬κ²Œ ν–₯μƒμ‹œν‚¬ μˆ˜ μžˆμŠ΅λ‹ˆλ‹€. νŠΉνžˆ, μ œν’ˆμ„ μ†Œκ°œν•˜λŠ” μ›Ήμ‚¬μ΄νŠΈμ—μ„œ μ΄λŸ¬ν•œ μš”μ†Œλ“€μ€ μ‚¬μš©μžμ˜ κ΄€μ‹¬μ„ λŒκ³ , μ œν’ˆμ— λŒ€ν•œ μ •λ³΄λ₯Ό νš¨κ³Όμ μœΌλ‘œ μ „λ‹¬ν•˜λŠ” μ—­ν• μ„ ν•©λ‹ˆλ‹€. λ¬Όλ‘ , μ΄ λͺ¨λ“  κ²ƒμ€ μ‚¬μš©μžμ˜ νŽΈμ˜μ„±κ³Ό μ ‘근성을 ν•΄μΉ˜μ§€ μ•ŠλŠ” λ²”μœ„ λ‚΄μ—μ„œ κ΅¬ν˜„λ˜μ–΄μ•Ό ν•©λ‹ˆλ‹€.