<a> νƒœκ·Έμ— λŒ€ν•΄ μ•Œμ•„λ³΄μž

2025. 11. 1. 15:06ㆍFront-end (Basic)/HTML

λ°˜μ‘ν˜•

λͺ©μ°¨

1. <a> νƒœκ·Έλž€? : anchor

2. <a> νƒœκ·Έμ˜ μš”μ†Œ

3. rel 파보기

4. target 파보기


1. <a> νƒœκ·Έλž€? : anchor

<a> νƒœκ·ΈλŠ” λ‹€λ₯Έ νŽ˜μ΄μ§€ (ν˜Ήμ€ 같은 νŽ˜μ΄μ§€)의 μ–΄λŠ μœ„μΉ˜, 파일, 이메일 μ£Όμ†Œ λ“±λ“± λ‹€λ₯Έ URL둜 μ—°κ²°ν•  수 μžˆλŠ” ν•˜μ΄νΌλ§ν¬λ₯Ό λ§Œλ“ λ‹€.

<a> νƒœκ·Έμ— λ“€μ–΄κ°€λŠ” children은 링크 λͺ©μ μ§€λ₯Ό λ‚˜νƒ€λ‚΄μ•Ό ν•œλ‹€.

<a href="https://ldd6cr-adness.tistory.com">λ°©λ‹€μ˜ ν‹°μŠ€ν† λ¦¬</a>

 


2. <a> νƒœκ·Έμ˜ 속성

<a> νƒœκ·Έμ˜ 속성듀을 μ•Œμ•„λ³΄μž.

 

속성 μ„€λͺ… 속성값 및 μ„€λͺ…
download  λ§ν¬ 클릭 μ‹œ URL을 μ—΄μ§€ μ•Šκ³  파일둜 λ‹€μš΄λ‘œλ“œν•˜λ„λ‘ μœ λ„ download 속성망 μ§€μ • μ‹œ, URL의 파일λͺ…이 μžλ™ μ‚¬μš©λœλ‹€
    (<a href='/file.pdf' download>
 κ°’을 μ§€μ •ν•˜λ©΄ 파일λͺ…을 μ§€μ •ν•  수 μžˆλ‹€.
    (<a href='/file.pdf' download='report.pdf'>
href 이동할 λŒ€μƒ URL μ£Όμ†Œ
HTTP 기반 URL이 μ•„λ‹ˆμ–΄λ„ λΈŒλΌμš°μ €κ°€ μ§€μ›ν•˜λŠ” λͺ¨λ“  μŠ€ν‚΄μ„ μ‚¬μš©ν•  수 있음
예) <a href="mailto:example@email.com">
hreflang 링크 URL의 μ–Έμ–΄ μ½”λ“œ 힌트 예) <a href="..." hreflang="en">
ping 링크 클릭 μ‹œ, μ§€μ •λœ ν•œ 개 μ΄μƒμ˜ URL둜 비동기 POST μš”μ²­μ„ 보냄 곡백으둜 κ΅¬λΆ„λœ μ—¬λŸ¬ URL μ§€μ • κ°€λŠ₯
예) <a href="..." ping="https://tracker.com/click">
referrerpolicy 링크 μš”μ²­ μ‹œ Referrer 헀더 전솑 방식 μ œμ–΄ no-referrer, origin, origin-when-cross-origin, same-origin, strict-origin, unsafe-url λ“±
rel μ—°κ²°ν•œ URL과의 관계λ₯Ό ν‘œμ‹œ  noopener: μƒˆ νƒ­(_blank) λ³΄μ•ˆ κ°•ν™” (opener 차단)
 noreferrer: μ°Έμ‘° URL(Referrer) 전솑 λ°©μ§€
 nofollow: 검색엔진이 링크 따라가지 μ•ŠμŒ
 ugc: μ‚¬μš©μž 생성 μ½˜ν…μΈ 
 sponsored: κ΄‘κ³ λ‚˜ 제휴 링크
 λ³΅μˆ˜ μ§€μ • κ°€λŠ₯ (곡백으둜 ꡬ뢄)
target  λ§ν¬ν•œ URL을 ν‘œμ‹œν•  μœ„μΉ˜ '_self' : ν˜„μž¬ μ°½ (default)
'_blank' : μƒˆλ‘œμš΄ νƒ­/μ°½
'_parent' : μ΅œμƒμœ„ ν”„λ ˆμž„(λΆ€λͺ¨κ°€ μ—†μœΌλ©΄ _self와 동일)
'_top' : μ΅œμƒλ‹¨ λΈŒλΌμš°μ§•μ— ν‘œμ‹œ
일반적으둜 μ™ΈλΆ€ λ§ν¬λŠ” _blank + rel="noopener noreferrer" μ‘°ν•©

type  λ§ν¬λœ λ¦¬μ†ŒμŠ€μ˜ MIME νƒ€μž… 힌트 제곡
 λΈŒλΌμš°μ €κ°€ λ¦¬μ†ŒμŠ€ νƒ€μž…μ„ 미리 νŒŒμ•…ν•  수 μžˆλ„λ‘ λ„μš°λ‚˜, μ‹€μ œ MIME 결정은 μ„œλ²„ 응닡에 λ”°λ₯Έλ‹€.
 

 

* Referrer : 링크 μš”μ²­ μ‹œ, ν˜„μž¬ νŽ˜μ΄μ§€μ˜ URL을 μ„œλ²„μ— μ–΄λ–€ ν˜•μ‹μœΌλ‘œ 보낼지 κ²°μ •ν•˜λŠ” μ •μ±…

* MIME : Multipurpose Internet Mail Extensions) : λ¬Έμ„œλ‚˜ 파일의 데이터 ν˜•μ‹μ„ μ‹λ³„ν•˜λŠ” ν‘œμ€€ 방식

 


3. rel 파보기

rel (relationship)은 ν˜„μž¬ λ¬Έμ„œμ™€ 링크된 λ¬Έμ„œμ˜ κ΄€κ³„/μ˜λ„λ₯Ό λͺ…μ‹œν•˜λŠ” 속성이닀.

λ³΄μ•ˆ, SEO, μ ‘κ·Όμ„± μΈ‘λ©΄μ—μ„œ μ€‘μš”ν•œ 의미λ₯Ό κ°€μ§„λ‹€.

속성값 μ„€λͺ…
noopener μƒˆ νƒ­(_blank)으둜 μ—΄λ¦° νŽ˜μ΄μ§€κ°€ window.openerλ₯Ό 톡해 원본 νŽ˜μ΄μ§€λ₯Ό μ‘°μž‘ν•˜μ§€ λͺ»ν•˜κ²Œ λ§‰μŒ (πŸš§λ³΄μ•ˆ)
noreferrer λΈŒλΌμš°μ €κ°€ 참쑰자(Referrer) 정보λ₯Ό μ „μ†‘ν•˜μ§€ μ•Šμ•„, μ‚¬μš©μžμ˜ κ°œμΈμ •λ³΄ λ…ΈμΆœμ„ 방지함 (πŸš§λ³΄μ•ˆ)
nofollow 검색엔진에 "이 λ§ν¬λŠ” μ‹ λ’°ν•˜μ§€ 말아라, ν¬λ‘€λ§ν•˜μ§€ 말아라"λΌλŠ” μ‹ ν˜Έλ₯Ό 보냄 → κ΄‘κ³ , λŒ“κΈ€ 등에 μ‚¬μš© (πŸ”ŽSEO)
ugc User Generated Content둜, μ‚¬μš©μž 생성 μ½˜ν…μΈ  λ‚΄μ˜ λ§ν¬μž„μ„ λͺ…μ‹œ (λŒ“κΈ€, 포럼 λ“±) (πŸ”ŽSEO)
sponsored κ΄‘κ³ λ‚˜ 제휴 λ§ˆμΌ€νŒ… λ“± 유료 λ§ν¬μž„μ„ λͺ…μ‹œ (πŸ”ŽSEO)

μ—¬λŸ¬ 값을 곡백으둜 κ΅¬λΆ„ν•˜μ—¬ ν•¨κ»˜ μ‚¬μš©ν•  수 μžˆλ‹€.

 

βœ… window.opener

λΈŒλΌμš°μ €μ—μ„œ μƒˆ 창을 μ—΄λ©΄, μƒˆ 창이 μ›λž˜ νŽ˜μ΄μ§€μ— μ ‘κ·Όν•  수 μž‡λŠ” μ°Έμ‘° 객체가 μžλ™μœΌλ‘œ μƒμ„±λœλ‹€.

window.open('https://example.com');

κ·Έ μ°Έμ‘° 객체가 window.opener인데, 이 객체가 μƒμ„±λ˜λ©΄ μƒˆ 탭은 window.openerλ₯Ό 톡해 λΆ€λͺ¨ 창의 JSλ₯Ό μ œμ–΄ν•  수 있게 λœλ‹€.

window.opener.location = 'https:/phishing-site.com'

이런 μ‹μœΌλ‘œ μ•…μš©ν•˜μ—¬ 곡격에 μ‚¬μš©ν•  수 μžˆλ‹€.

λ•Œλ¬Έμ— target="_blank"둜 링크λ₯Ό μ—΄ λ•Œ rel="noopener"λ₯Ό ν•¨κ»˜ μž‘μ„±ν•˜μ—¬ window.opener 연결을 λŠλŠ” λ³΄μ•ˆ 처리λ₯Ό ν•΄μ•Όν•œλ‹€.

 

βœ… ugc, sponsored μ‚¬μš©ν•˜λŠ” 이유

ugc와 sponsoredλŠ” 검색엔진이 링크의 의미λ₯Ό νŒλ‹¨ν•˜λŠ” 힌트둜 쓰인닀.

 

  • ugcλ₯Ό μž‘μ„±ν•˜μ—¬ μ‚¬μš©μž 생성 μ½˜ν…μΈ μž„μ„ ν‘œμ‹œν•˜λ©΄, κ²€μƒ‰μ—”μ§„μ—μ„œ ν•΄λ‹Ή 링크가 μ‚¬μš©μž μž…λ ₯μž„μ„ μ•Œκ³  신뒰도λ₯Ό μ‘°μ •ν•œλ‹€.
  • sponsoredλ₯Ό μž‘μ„±ν•˜μ—¬ 상업적 λ§ν¬μž„μ„ ν‘œμ‹œν•˜λ©΄, κ²€μƒ‰μ—”μ§„μ—μ„œ μžμ—° 검색 결과둜 μ˜€μΈν•˜μ§€ μ•Šκ²Œ ν•  수 μžˆλ‹€.
    • κ΄‘κ³  링크λ₯Ό 일반 컨텐츠인 κ²ƒμ²˜λŸΌ 두면 검색엔진은 이λ₯Ό λ§ν¬ μ‘°μž‘μœΌλ‘œ κ°„μ£Όν•˜μ—¬ SEO νŒ¨λ„ν‹°λ₯Ό 받을 μˆ˜λ„ μžˆλ‹€.

 


4. target 파보기

target은 링크λ₯Ό ν΄λ¦­ν–ˆμ„ λ•Œ μ–΄λ””에 ν‘œμ‹œν• μ§€ μ§€μ •ν•˜λŠ” μ†μ„œμ΄λ‹€.

속성값 μ„€λͺ… λΈŒλΌμš°μ € λ™μž‘
_self ν˜„μž¬ νƒ­μ—μ„œ μ—΄κΈ° (default) λ™μΌν•œ νƒ­ λ‚΄μ—μ„œ 이동
_blank μƒˆ νƒ­(ν˜Ήμ€ μƒˆ μ°½)μ—μ„œ μ—΄κΈ° μƒˆλ‘œμš΄ λΈŒλΌμš°μ € νƒ­ 생성
_parent ν˜„μž¬ λΈŒλΌμš°μ§• μ»¨ν…μŠ€νŠΈμ˜ λΆ€λͺ¨ ν”„λ ˆμž„μ— ν‘œμ‹œ iframe λ‚΄λΆ€μ—μ„œ μƒμœ„ ν”„λ ˆμž„μ— ν‘œμ‹œ
_top μ΅œμƒμœ„ λΈŒλΌμš°μ§• μ»¨ν…μŠ€νŠΈ(λͺ¨λ“  ν”„λ ˆμž„μ—μ„œ 벗어남)에 ν‘œμ‹œ μ΅œμƒμœ„ νŽ˜μ΄μ§€μ—μ„œ μ—΄κΈ°
custom name μ§€μ •ν•œ μ΄λ¦„μ˜ μ°½/탭에 μ—΄κΈ° (μ—†μœΌλ©΄ μƒˆλ‘œ 생성) <a target="popup"> → 동일 이름 λ§ν¬λŠ” 같은 창을 μž¬μ‚¬μš©

 

 

 

μ°Έκ³ 

 

λ°˜μ‘ν˜•

'Front-end (Basic) > HTML' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

HTML : λ©”νƒ€νƒœκ·Έ <meta>  (2) 2025.07.29
HTML : 링크 νƒœκ·Έ <a>  (0) 2025.07.29
HTML : μ‹œλ§¨ν‹± νƒœκ·Έ (Semantic Tag)  (2) 2025.07.29
HTML 1 : html 기초  (0) 2025.01.21