https://developer.mozilla.org/ko/docs/Web/HTML/Global_attributes/data-*
data-* - HTML: Hypertext Markup Language | MDN
data-* ์ ์ญ ํน์ฑ์ ์ฌ์ฉ์ ์ง์ ๋ฐ์ดํฐ ํน์ฑ(custom data attributes)์ด๋ผ๋ ํน์ฑ ํด๋์ค๋ฅผ ํ์ฑํจ์ผ๋ก์จ ์์์ ๋ฐ์ดํฐ๋ฅผ ์คํฌ๋ฆฝํธ๋ก HTML๊ณผ DOM ์ฌ์ด์์ ๊ตํํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋๋ค.
developer.mozilla.org
ํ๋์ฉ ๋ฏ์ด๋ณด์!
- container.dataset.maxRating ์ด๊ฒ ๋ญ์ผ? maxRating ์์ฑ์ ์ด๋์ ์์ด?
- ์ด๊ฑด HTML์ data-* ์์ฑ๊ณผ ๊ด๋ จ์ด ์์! HTML ํ๊ทธ์๋ ์ฐ๋ฆฌ๊ฐ ์ง์ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ ์ํด data- ๋ก ์์ํ๋ ์์ฑ์ ๋ง์๋๋ก ์ถ๊ฐํ ์ ์์. ์๋ฅผ ๋ค๋ฉด data-user-id="123", data-product-name="์ปคํผ" ์ฒ๋ผ ๋ง์ด์ผ.
- ์ฐ๋ฆฌ ์ฝ๋ index.html ํ์ผ์ ๋ณด๋ฉด <div class="star-rating" data-max-rating="5"> ์ด๋ ๊ฒ data-max-rating์ด๋ผ๋ ์์ฑ์ด ์์์ง? ์ด๊ฒ ๋ฐ๋ก ๊ทธ๊ฑฐ์!
- ์๋ฐ์คํฌ๋ฆฝํธ์์๋ element.dataset์ด๋ผ๋ ํน๋ณํ ์์ฑ์ ํตํด ์ด๋ฐ data-* ์์ฑ ๊ฐ๋ค์ ์ ๊ทผํ ์ ์์.
- ์ค์ํ ๊ท์น: HTML์์ ์์ฑ ์ด๋ฆ์ด ํ์ดํ(-)์ผ๋ก ์ฐ๊ฒฐ๋ ์ผ๋ฐฅ ์ผ์ด์ค(data-max-rating)์ด๋ฉด, ์๋ฐ์คํฌ๋ฆฝํธ์ dataset์์๋ ํ์ดํ์ด ์์ด์ง๊ณ ๋ค๋ฐ๋ฅด๋ ๋ฌธ์๊ฐ ๋๋ฌธ์๋ก ๋ฐ๋๋ ์นด๋ฉ ์ผ์ด์ค(maxRating)๋ก ์ ๊ทผํด์ผ ํจ!
- data-max-rating -> dataset.maxRating
- data-user-id -> dataset.userId
- data-product-name -> dataset.productName
- ๋ฐ๋ผ์ container.dataset.maxRating์ container ์์(์: <div class="star-rating" data-max-rating="5">)์ data-max-rating ์์ฑ ๊ฐ, ์ฆ ๋ฌธ์์ด "5" (๋๋ "3")๋ฅผ ๊ฐ๋ฆฌํค๋ ๊ฑฐ์. ์๋ฐ์คํฌ๋ฆฝํธ์ ์๋ maxRating์ด๋ผ๋ ์์ฑ์ด ์๋ ๊ฒ ์๋๋ผ, HTML์ data-max-rating ์์ฑ์ dataset์ ํตํด ์ ๊ทผํ๋ ๋ฐฉ์์ธ ๊ฑฐ์!
'๐ป FE > ๐ HTML & CSS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๐พ CSS :not()๊ณผ :has()์ ์กฐํฉ (3) | 2025.03.12 |
---|---|
HTML ํผ ํ๊ทธ์ ๋ํด์ ์์๋์? ์ ๋ ์๊ธด ์๋๋ฐ์? (not ํผํผํธ๋ฆฐ) (3) | 2025.03.07 |
HTML ์ ์ญ์์ฑ ํ๋ฐฉํ๊ธฐ ๐ (0) | 2025.03.07 |
์น ํ์ด์ง ๋ฉํ๋ฐ์ดํฐ์ ๋ํ์ฌ ์์๋ณด๊ธฐ ๐ (0) | 2025.03.06 |
01. Markup ์ธ์ด์ Markdown ์ธ์ด ๋น๊ต (2) | 2025.03.04 |