Tooltip ๊ตฌํ˜„

2024. 12. 10. 20:04ยทWhat I Learn

Tooltip์€ ์ปค์„œ๋ฅผ ํŠน์ • ๊ตฌ์„ฑ ์š”์†Œ์— hover ๋˜๋ฉด ํ•ด๋‹น ์˜์—ญ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•˜๋Š” GUI ์š”์†Œ์ด๋‹ค.

ํ™”๋ฉด์— ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์ด๋‚˜ ํŠน์ • ์š”์†Œ์— ๋Œ€ํ•œ ์•ˆ๋‚ด๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ ํ™”๋ฉด์„ Dimmed ์ฒ˜๋ฆฌํ•˜๊ณ  ๋„์›€๋ง์ด๋‚˜ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์‚ฌ์šฉ์ž ์ƒํ˜ธ์ž‘์šฉ์— ์˜ํ•œ ํŒ์—… ์ข…๋ฅ˜๋Š” ๋‹ค์Œ ๊ธ€์— ์žˆ๋‹ค. -> Toast ์ ์šฉ๊ธฐ

 

๋‚˜์˜จ ๋””์ž์ธ์— ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํˆดํŒ UI๊ฐ€ ์žˆ์—ˆ๊ณ , ์ด๋ ‡๊ฒŒ ํˆดํŒ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๊ตฌํ˜„ํ–ˆ๋‹ค.

 

import React from 'react'

interface TooltipProps {
  children: React.ReactNode
}

export default function Tooltip({ children }: TooltipProps) {
  return (
    <div className='group relative flex items-center justify-center mt-[40px] w-full h-fit flex-col gap-2'>
      <div className='absolute top-[-60px] hidden group-hover:flex flex-col items-center gap-4  max-w-[300px] '>
        <div className='bg-black rounded-full py-3 px-[20px] h-[40px] relative flex items-center '>
          <p className='line-height: 1.5rem text-[12px] text-white leading-none'>
            ๐Ÿ‘ ์นœ๊ตฌ์—๊ฒŒ ๊ฐ์ • ์ด๋ชจ์ง€๋ฅผ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์–ด์š”!
          </p>
          <div className='absolute w-3 h-3 bg-black transform rotate-45 left-1/2 -translate-x-1/2 -bottom-1.5'></div>
        </div>
      </div>
      {children}
    </div>
  )
}

 

https://youtu.be/tmqzVrh4zcg

 

'What I Learn' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

e.stopPropagation(), ์ด๋ฒคํŠธ ์ „ํŒŒ ๋ฐฉ์ง€  (0) 2024.12.10
format date as 'YYYY.MM.DD AMhh:mm'  (0) 2024.12.10
Lottie๋กœ ์ชฝ์ง€ ์ธ๋„ค์ผ์— ์ ์šฉํ•˜๊ธฐ  (0) 2024.12.10
TanStack Query์™€ ํ•จ๊ป˜ ๊ตฌํ˜„ํ•œ cursor ๋ฐฉ์‹์˜ ๋ฌดํ•œ ์Šคํฌ๋กค  (1) 2024.12.10
Toast ์ ์šฉ๊ธฐ  (0) 2024.12.10
'What I Learn' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • e.stopPropagation(), ์ด๋ฒคํŠธ ์ „ํŒŒ ๋ฐฉ์ง€
  • format date as 'YYYY.MM.DD AMhh:mm'
  • Lottie๋กœ ์ชฝ์ง€ ์ธ๋„ค์ผ์— ์ ์šฉํ•˜๊ธฐ
  • TanStack Query์™€ ํ•จ๊ป˜ ๊ตฌํ˜„ํ•œ cursor ๋ฐฉ์‹์˜ ๋ฌดํ•œ ์Šคํฌ๋กค
nuew
nuew
๐Ÿคธ ์žฌ์ฃผ ๋„˜๋Š” ์ค‘
  • nuew
    bloggg. . .๐Ÿฆ–๐Ÿ’ฅ
    nuew
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (88)
      • issue (10)
      • baekjoon (41)
      • lecture recap (11)
      • What I Learn (26)
      • retrospective (0)
      • maeil-mail (0)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ๋งํฌ

  • ๊ณต์ง€์‚ฌํ•ญ

  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    js
    ํ•œ์ž…ํฌ๊ธฐ๋กœ ์ž˜๋ผ๋จน๋Š” ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ
    TailwindCSS
    css
    Study
    ์•Œ๊ณ ๋ฆฌ์ฆ˜
    ์ฝ”๋”ฉํ…Œ์ŠคํŠธ
    ํ•œ์ž…ํฌ๊ธฐ๋กœ์ž˜๋ผ๋จน๋Š”ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ
    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ
    ๋ฐฑ์ค€
    issue
    Algorithm
    Node.js
    media-query
    Baekjoon
    modal
    JavaScript
    what i learn
    zustand
    TypeScript
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
nuew
Tooltip ๊ตฌํ˜„
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”