μλνν° μΏ ν€ λ¬Έμ λ₯Ό ν΄κ²°νλ μ νλΈ λμμ νμ μ°½ μ¬μ λ°©λ²
μ νλΈ λμμ μ½μ μ λ°μνλ μλνν° μΏ ν€ λ¬Έμ λ₯Ό ν΄κ²°νκ³ PageSpeed Insights μ±λ₯ μ μλ₯Ό 100μ μΌλ‘ μ΅μ ννλ νμ μ°½ μ¬μ μ€ν¬λ¦½νΈ μ½λλ₯Ό 곡κ°ν©λλ€. Core Web Vitals μ μ μ μ§μ μ¬μ©μ κ²½ν(UX) κ·Ήλνλ₯Ό μν μ νλΈ μ΅μ ν μ¬μ λ°©λ²κ³Ό HTML, CSS, JavaScript μ½λ ꡬν λ°©λ²μ μλ΄ν©λλ€.
1. μ νλΈ λμμ μ½μ μ ν¨μ : μλνν° μΏ ν€μ SEO μ±λ₯ μ ν λ¬Έμ
λΈλ‘κ·Έ ν¬μ€ν
μμ μ νλΈ λμμ μ¬μ λ°©λ²μ μ΄λ»κ² ꡬμ±νλλμ λ°λΌ νμ΄μ§μ κ²μ μμ§ μ΅μ ν(SEO) μ μμ μ¬μ©μ κ²½ν(UX)μ ν° μν₯μ λ―ΈμΉ μ μμ΅λλ€. νμ§λ§ λ¨μν μ νλΈ λ§ν¬λ₯Ό μ½μ
νκ±°λ iframe μ½λλ₯Ό λΆμ¬ λ£λ κΈ°μ‘΄μ λ°©μμ μκ°λ³΄λ€ ν° λ¬Έμ λ₯Ό μΌκΈ°ν μ μμ΅λλ€.
λ°λ‘ μλνν° μΏ ν€(Third-Party Cookies) λ¬Έμ λλ¬Έμ
λλ€. μΌλ°μ μΈ μ νλΈ μ½μ
λ°©μμ μΈλΆ λλ©μΈμΈ youtube.com λλ youtu.beμ μΏ ν€λ₯Ό λΆλ¬μ€κ² λλ©°, μ΄λ μ±λ₯ μΈ‘μ λꡬ(Lighthouse, PageSpeed Insights)μμ 'κΆμ₯νμ§ μλ λ°©λ²' λλ 'μλνν° μ½λ μν₯'μΌλ‘ λΆλ₯λμ΄ μ 체 νμ΄μ§μ μ±λ₯ μ μλ₯Ό 100μ λ§μ μμ 70~80μ λλ‘ νλ½μν€λ μ£Όμ μμΈμ΄ λ©λλ€. κ²λ€κ° Google Chromeμ λΉλ‘―ν μ£Όμ λΈλΌμ°μ λ€μ μλνν° μΏ ν€ μ§μμ μ μ°¨ μ’
λ£νκ³ μκΈ° λλ¬Έμ, κΈ°μ‘΄ λ°©μμΌλ‘λ κ²μ μ΅μ ν μΈ‘λ©΄μμλ μ₯κΈ°μ μΌλ‘ λΆλ¦¬ν΄μ§ μ μμ΅λλ€.
μλνν° μΏ ν€ λ¬Έμ μ μ¬μΈ΅ λΆμ
μΏ ν€(Cookies)λ μΉμ¬μ΄νΈ λ°©λ¬Έ μ μ¬μ©μμ μ»΄ν¨ν°μ μ μ₯λλ λ°μ΄ν° νμΌμ
λλ€. μλνν° μΏ ν€λ μ μ₯λλ μΏ ν€κ° μ¬μ©μκ° μ§μ λ°©λ¬Έν νμ΄μ§μ μΏ ν€κ° μλ λ€λ₯Έ μ¬μ΄νΈμ λλ©μΈμμ μμ±λ μΏ ν€λ₯Ό μλ―Έν©λλ€. μ¬μ©μκ° μ§μ λ°©λ¬Έν μΉμ¬μ΄νΈμ μΏ ν€λ "νΌμ€νΈ νν° μΏ ν€"λΌκ³ νκ³ , μ¬μ©μκ° λ°©λ¬Έν μ¬μ΄νΈκ° μλκ³ μ¬μ©μκ° λͺ¨λ₯΄λ μ¬μ΄νΈμ μΏ ν€λ μλνν° μΏ ν€λΌκ³ ν©λλ€. μ νλΈ iframeμ μ½μ
νλ©΄, ν΄λΉ iframeμ΄ λ‘λλ λ μ νλΈ λλ©μΈμμ μ¬μ©μμ μμ² κΈ°λ‘, κ΄κ³ μΆμ λ±μ μν μλνν° μΏ ν€λ₯Ό μμ±ν©λλ€. μ΄κ²μ΄ μ±λ₯ μ ν λ° νλΌμ΄λ²μ κ²½κ³ μ μμΈμ΄ λ©λλ€.
μ νλΈ λμμ μ±λ₯ ν μ€νΈ κ²°κ³Ό (λ¬Έμ μ§λ¨)
μ νλΈ λμμμ μΌλ°μ μΈ λ°©λ²μΌλ‘ μ€μ ν κ²μ μ΅μ ν μ±λ₯ λ¬Έμ μ§λ¨ κ²°κ³Ό, μ±λ₯ μΈ‘μ κ²°κ³Όλ 100μ μμ 79μ μΌλ‘ νλ½ν©λλ€. μ£Όμ μμΈμ μ νλΈ λμμμ λ§ν¬ν λ μ¬μ©νλ μ½λμ μλνν° μΏ ν€λ‘ λ°μν©λλ€.
βκ²½κ³ νμ: μλ νν° μΏ ν€ μ¬μ© μΏ ν€ 2κ° μ°Ύμ μλ νν° μΏ ν€μ λν μ§μμ Chrome ν₯ν λ²μ μμ μμ λ μμ μ
λλ€. μλνν° μΏ ν€λ VISITOR_INFO1_LIVE, YSC λ±μ μ΄λ¦μΌλ‘ λ°κ²¬λ©λλ€.
URL YouTube video YSC /embed/SK3LFFfWKNY?si=(www.youtube.com) VISITOR_INFO1_LIVE /embed/SK3LFFfWKNY?si=(www.youtube.com)

μ΄λ¬ν λ¬Έμ λ₯Ό ν΄κ²°νλ €λ©΄ μ νλΈ λμμμ μ½μ νλ©΄μλ μ±λ₯ μ μλ₯Ό μ μ§νκ³ SEOκΉμ§ κ³ λ €ν μ μλ λ°©λ²μ΄ νμνλ©°, λ°λ‘ νμ μ°½μ μ΄μ©ν μ νλΈ μ¬μ λ°©μμ΄ κ·Έ ν΄λ΅μ΄ λ©λλ€.
2. μ νλΈ μ΅μ ν λμμ μ¬μλ°©λ²: νμ μ°½(Modal) μ¬μ μ리
μ νλΈ μ΅μ ν λμμ μ¬μ λ°©λ²μ μΌλ°μ μΈ λ§ν¬λ νλ¬κ·ΈμΈ μ¬μ© μ λ°μνλ μ±λ₯ λ¬Έμ λ₯Ό ν΄κ²°νκΈ° μν΄, μ΄κΈ° νμ΄μ§ λ‘λ© μ λμμ νλ μ΄μ΄ μ체λ₯Ό λ‘λνμ§ μκ³ , μ¬μ©μκ° ν΄λ¦νμ λλ§ λμμμ νμ μ°½(Modal) ννλ‘ λμ μ¬μνλ λ°©μμ λλ€. μ΄ λ°©λ²μ ν΅ν΄ μ±λ₯ λ¬Έμ λ₯Ό κ°μ νκ³ , μ¬μ©μ μ§μ€λλ₯Ό λμΌ μ μμ΅λλ€.
νμ μ°½ μ¬μ λ°©μμ κΈ°μ μ μ΄μ (Lighthouse 100μ λ¬μ± μ λ΅)
μ νλΈ λμμμ νμ μ°½μΌλ‘ μ¬μνκ² μ€μ ν΄μ£Όλ©΄ λ€μκ³Ό κ°μ κΈ°μ μ μ΄μ μ μ»μ μ μμ΅λλ€.
- μ΄κΈ° μ±λ₯ μ μ μ μ§: μ΄κΈ° νμ΄μ§ λ‘λ μμλ κ°λ²Όμ΄ μ΄λ―Έμ§μ μλ°μ€ν¬λ¦½νΈ μ½λλ§ λ‘λνκ³ , 무거μ΄
iframeλ° μλνν° μΏ ν€κ° λ‘λλμ§ μμ΅λλ€. μ΄λ‘ μΈν΄ Largest Contentful Paint (LCP)μ Total Blocking Time (TBT)μ΄ ν¬κ² κ°μ λμ΄ PageSpeed Insights μ μκ° 100μ μ κ°κΉκ² μ μ§λ©λλ€. - μλνν° μΏ ν€ μ§μ° λ‘λ: λμμ ν΄λ¦ μμ μλ§ μλνν° μΏ ν€κ° λ‘λλλ―λ‘, μ΄κΈ° νμ΄μ§ λ‘λ© μ λ°μνλ μΏ ν€ κ²½κ³ λ₯Ό ννΌν μ μμ΅λλ€.
- ν₯μλ μ¬μ©μ κ²½ν (UX): νμ μ°½μΌλ‘ μ¬μλκΈ° λλ¬Έμ μ¬μ©μλ νμ΄μ§μ λ€λ₯Έ μμμ λ°©ν΄λ°μ§ μκ³ λμμμ λ μ§μ€ν΄μ μμ²ν μ μλ μ₯μ λ μμ΅λλ€.
λ³κ²½ ν ν μ€νΈ κ²°κ³Ό (μ±λ₯ κ°μ νμΈ)
μ νλΈ λμμ μ¬μ λ°©λ²μ λ³κ²½ν ν κ²μ μ΅μ ν μ±λ₯ μ§λ¨μ λ€μ μ€νν΄ λ³΄λ©΄, μ±λ₯ μ μκ° 100μ μΌλ‘ ν¬κ² κ°μ λλ κ²μ νμΈν μ μμ΅λλ€.


3. μ νλΈ μ΅μ ν μ¬μ νμ μ°½ μ½λ μμΈ λΆμ λ° μμ λ°©λ²
μλ μ 곡λ μ½λλ HTML, CSS, JavaScriptλ₯Ό μ‘°ν©νμ¬ μ νλΈ νμ μ°½(Modal) κΈ°λ₯μ μλ²½νκ² κ΅¬νν μ½λμ λλ€. μ΄ μ½λλ₯Ό κ·Έλλ‘ μ¬μ©νλ©΄ λλ©°, μμ ν λΆλΆμ μ΄λ―Έμ§(λλ κΈμ) μ€μ κ³Ό μ νλΈ λ§ν¬ μ£Όμ κ°λ§ λ³κ²½ν΄ μ£Όλ©΄ λ©λλ€.
μ½λ ꡬ쑰μ κΈ°λ₯ λΆλ¦¬
μ 곡λ μ½λλ μΈ λΆλΆμΌλ‘ λͺ νν λΆλ¦¬λμ΄ μμ΅λλ€.
- CSS (
styleνκ·Έ λ΄λΆ): νμ μ°½(.modal)κ³Ό λ΄μ© 컨ν μ΄λ(.modal-content)μ μμΉ, ν¬κΈ°, λ°°κ²½μ μ μν©λλ€. νΉνaspect-ratio: 16 / 9;λ λμμ λΉμ¨μ μ μ§νλ©° λ°μνμΌλ‘ νμλλλ‘ ν©λλ€. - HTML ꡬ쑰 (
div id="myModal"): λͺ¨λ¬ μ°½μ κΈ°λ³Έ ꡬ쑰μiframeνλ μ΄μ΄, λ«κΈ° λ²νΌμ μ μν©λλ€. μ΄κΈ°μλdisplay: noneμΌλ‘ μ¨κ²¨μ Έ μμ΅λλ€. - JavaScript (
scriptνκ·Έ λ΄λΆ): λͺ¨λ¬ μ°½μ μ΄κ³ λ«λ λ Όλ¦¬λ₯Ό μ μ΄ν©λλ€. μ¬μ©μκ° μ΄λ―Έμ§λ₯Ό ν΄λ¦ν λ λͺ¨λ¬μ νμνκ³iframeμsrcμ μλ μ¬μ νλΌλ―Έν°λ₯Ό μΆκ°νμ¬ μμμ λ‘λν©λλ€.
μ νλΈ λ§ν¬ μ£Όμ λ³κ²½ κ°μ΄λ
μ νλΈμ λ§ν¬λ μ νλΈ κ²μλ¬Ό 곡μ μμ μ€μ ν΄μ£Όλ μ£Όμλ₯Ό κ·Έλλ‘ κ°μ Έμμ μ½λμ μ€κ° μ£Όμ λΆλΆλ§ 볡μ¬ν΄μ μ¬μ©νμλ©΄ λ©λλ€. μλ₯Ό λ€μ΄, 곡μ μ£Όμκ° https://youtu.be/M9tG__0dpek λΌλ©΄, μ½λμ videoSrc λ³μμ https://www.youtube.com/embed/M9tG__0dpek ννλ‘ λ³κ²½νμ¬ μ¬μ©ν΄μΌ ν©λλ€.
μ΄λ―Έμ§ μ¬μ© λ°©λ² λ° ALT μμ± νμ©
μ νλΈλ₯Ό μ¬μν 문ꡬλ μ΄λ―Έμ§λ μ νλΈμ μ΄λ―Έμ§λ₯Ό μΊ‘μ²ν΄μ μ¬μ©νμ
λ λλ©° λ€λ₯Έ μ΄λ―Έμ§λ₯Ό μ¬μ©ν΄λ λ©λλ€. μ΄λ―Έμ§ μ£Όμλ ν
μ€νΈ νμμΌλ‘ λ³κ²½ν΄μ£Όλ©΄ κ°λ¨νκ² μ¬μ©ν μ μμΌλ©°, λ§μ½ μ΄λ―Έμ§λ₯Ό μ΄μ©ν κ²½μ°λ λΈλ‘κ·Έμ μ΄λ―Έμ§λ₯Ό λ¨Όμ μ€μ ν ν κ·Έ μ΄λ―Έμ§ μ£Όμλ₯Ό μ΄μ©νλ λ°©λ²λ μμ΅λλ€. μ΄ λ°©λ²μ ν΅μ¬μ λ§ν¬λ₯Ό μμ±ν μ΄λ―Έμ§ ALT μμ±λ§ 'μ νλΈ μ΄λ―Έμ§'λ‘ μ€μ νλ κ²μ
λλ€. JavaScript μ½λκ° μ΄ ALT μμ±μ κ°μ§ μ΄λ―Έμ§λ₯Ό μ°Ύμ ν΄λ¦ μ΄λ²€νΈλ₯Ό μ°κ²°νκΈ° λλ¬Έμ
λλ€.
1. μ΄λ―Έμ§λ₯Ό λ¨Όμ νμ΄μ§μ λ£κ³ μ΄λ―Έμ§ ALT μμ±μ 'μ νλΈ μ΄λ―Έμ§'λ‘ μ§μ ν©λλ€.
2. μμ μ μ₯ ν μ΄λ―Έμ§ κ²½λ‘λ₯Ό 볡μ¬ν©λλ€.
3. μ΄λ―Έμ§ κ²½λ‘λ₯Ό μνλ μμΉμ λ£μ΄μ€λλ€.
4. μλ μ€ν¬λ¦½νΈ μ½λλ₯Ό μ νλΈ νμ μ°½ μ½λμ κ°μ΄ μ¬μ©ν©λλ€.

μ΅μ νλ νμ μ°½ μ½λ (HTML, CSS, JavaScript)
β μ½λμμ : 2024.9.13. μλ μ½λλ μλ°μ€ν¬λ¦½νΈλ₯Ό μ΄μ©νμ¬ ALT μμ± 'μ νλΈ μ΄λ―Έμ§'λ₯Ό κ°μ§ λͺ¨λ μ΄λ―Έμ§λ₯Ό ν΄λ¦ κ°λ₯νλλ‘ μ°κ²°ν©λλ€.
β νμ μ°½ μ½λ
style
.modal {
display: none;
position: fixed;
z-index: 1000;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.5);
overflow: auto;
}
.modal-content {
background: #fff;
margin: 5% auto;
padding: 20px;
border: 1px solid #888;
width: 90%;
max-width: 960px;
position: relative;
box-sizing: border-box;
overflow: hidden;
aspect-ratio: 16 / 9;
}
.close {
position: absolute;
top: 10px;
right: 20px;
color: #aaa;
font-size: 28px;
font-weight: bold;
cursor: pointer;
}
.close:hover {
color: #000;
}
.modal-content iframe {
width: 100%;
height: 100%;
border: none;
}
/style
div id="myModal" class="modal"
div class="modal-content"
span class="close" onclick="closeModal()"×/span
iframe id="videoFrame" src="" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen/iframe
/div
/div
script
// μ νλΈ λμμ URL (μ¬κΈ°μ 볡μ¬ν μ νλΈ μλ² λ μ£Όμμ 'embed/μμID' λΆλΆμ μ
λ ₯νμΈμ)
const videoSrc = "https://www.youtube.com/embed/M9tG__0dpek";
document.addEventListener('DOMContentLoaded', () = {
// ALT μμ±μ΄ "μ νλΈ μ΄λ―Έμ§"μΈ λͺ¨λ μ΄λ―Έμ§λ₯Ό μ°Ύμ ν΄λ¦ κ°λ₯νκ² λ§λλλ€.
document.querySelectorAll('img[alt="μ νλΈ μ΄λ―Έμ§"]').forEach(img = {
const link = document.createElement('a');
link.href = '#';
link.classList.add('popup-link');
link.addEventListener('click', openModal);
// μ΄λ―Έμ§λ₯Ό νκ·Έλ‘ κ°μΈμ ν΄λ¦ μμμ μ€μ ν©λλ€.
img.parentNode.insertBefore(link, img);
link.appendChild(img);
});
});
function openModal(event) {
event.preventDefault();
document.getElementById("myModal").style.display = "block";
// λͺ¨λ¬μ°½ μ΄λ¦΄ λλ§ srcλ₯Ό μ€μ νκ³ autoplay νλΌλ―Έν°λ₯Ό μΆκ°νμ¬ μ¬μμ μμν©λλ€.
document.getElementById("videoFrame").src = `${videoSrc}?autoplay=1`;
}
function closeModal() {
document.getElementById("myModal").style.display = "none";
const videoFrame = document.getElementById("videoFrame");
const currentSrc = videoFrame.src;
// λͺ¨λ¬μ°½ λ«μ λ srcλ₯Ό μ΄κΈ°ννμ¬ λμμ μ¬μμ μ€μ§νκ³ λ¦¬μμ€λ₯Ό ν΄μ ν©λλ€.
videoFrame.src = '';
videoFrame.src = currentSrc.split('?')[0]; // srcλ₯Ό μλ³Έ μ£Όμλ‘ μ¬μ€μ (μ ν μ¬ν)
}
window.onclick = function(event) {
// λͺ¨λ¬ μΈλΆλ₯Ό ν΄λ¦νμ λ λͺ¨λ¬μ λ«κ³ μ¬μμ μ€μ§ν©λλ€.
if (event.target === document.getElementById("myModal")) {
closeModal();
}
}
/script
4. μλνν° μΏ ν€ μ’ λ£ μλμ SEO λμ μ λ΅ λ° μ±λ₯ μ΅μ ν
Googleμ 2024λ λΆν° μλνν° μΏ ν€ μ§μμ λ¨κ³μ μΌλ‘ μ’ λ£νκ³ μμ΅λλ€. μ΄λ μΉμ¬μ΄νΈ μ΄μμλ€μκ² λ¨μν κΈ°μ μ λ¬Έμ κ° μλ, κ·Όλ³Έμ μΈ SEO λ° μΉ μ±λ₯ μ λ΅μ λ³νλ₯Ό μꡬν©λλ€. μ νλΈ νμ μ°½ μ¬μ λ°©λ²μ μ΄λ¬ν λ³νμ κ°μ₯ ν¨μ¨μ μΌλ‘ λμνλ λͺ¨λ² μ¬λ‘ μ€ νλμ λλ€.
Core Web Vitals (CWV) μ§νμ λ―ΈμΉλ μν₯
μΌλ°μ μΌλ‘ λμμ iframeμ νμ΄μ§ λ‘λ© μ΄κΈ°μ λ©μΈ μ€λ λλ₯Ό μ°¨μ§νμ¬ TBT (Total Blocking Time) λ° FID/INP (μ¬μ©μ μλ΅μ±) μ§νμ λΆμ μ μΈ μν₯μ λ―ΈμΉ©λλ€. νμ
μ°½ λ°©μμ λμμμ ν΄λ¦νκΈ° μ κΉμ§ μ΄ λ¬΄κ±°μ΄ μ€λ λ μμ
μ μμ ν μ§μ°μν€λ―λ‘, Core Web Vitalsμ μΈ κ°μ§ μ£Όμ μ§ν(LCP, INP, CLS)λ₯Ό λͺ¨λ κΈμ μ μΌλ‘ κ°μ νλ ν¨κ³Όλ₯Ό κ°μ Έμ΅λλ€.
μ¬μ©μ μ΄λ―Έμ§ μ νμ μ€μμ±
μ΄ λ°©λ²μ μ¬μ©ν κ²½μ°, μ΄λ―Έμ§κ° 2κ°κ° λ
ΈμΆλ μ μμΌλ―λ‘, μλ³Έ μ΄λ―Έμ§λ display: none μ€μ λ±μΌλ‘ μ¬μ©μμκ² λ
ΈμΆλμ§ μκ² μ²λ¦¬ν΄μΌ ν©λλ€. κ°μ₯ μ€μν κ²μ λμμμ μΈλ€μΌ μν μ ν μ΄λ―Έμ§μ
λλ€. μ΄ μ΄λ―Έμ§λ LCP μμλ‘ μμ©ν κ°λ₯μ±μ΄ λμΌλ―λ‘, λ°λμ μμΆνκ³ WebPμ κ°μ μ΅μ νμμΌλ‘ λ³νν΄μΌ νλ©°, μ΄λ―Έμ§μ ν¬κΈ°(width, height) μμ±μ λͺ
μνμ¬ CLS(λ μ΄μμ μ΄λ)λ₯Ό λ°©μ§ν΄μΌ ν©λλ€. μ¬μ©μκ° μ΄λ―Έμ§λ₯Ό ν΄λ¦ν λλ§ λΉλ‘μ μ€μ νλ μ΄μ΄λ₯Ό λ‘λνλ 'ν΄λ¦ ν¬ νλ μ΄' μμΉμ΄ μλ²½νκ² μ μ©λ©λλ€.
μ½λ μ μ§λ³΄μ λ° νμ₯μ±
μ 곡λ JavaScript μ½λλ document.querySelectorAll('img[alt="μ νλΈ μ΄λ―Έμ§"]')λ₯Ό μ¬μ©νμ¬ μ μ°νκ² μ¬λ¬ λμμμ μ²λ¦¬ν μ μλλ‘ μ€κ³λμμ΅λλ€. λΈλ‘κ·Έ κΈμ μ¬λ¬ κ°μ μ νλΈ λμμμ μ½μ
ν κ²½μ°μλ, κ° λμμμ μΈλ€μΌ μ΄λ―Έμ§μ λμΌν alt μμ±("μ νλΈ μ΄λ―Έμ§")μ μ§μ νκ³ , JavaScriptμ videoSrc λ³μλ₯Ό ν΄λΉ μ΄λ―Έμ§μ λ§κ² λμ μΌλ‘ λ³κ²½νλ λ‘μ§μ μΆκ°νλ©΄ νλμ μ€ν¬λ¦½νΈλ‘ λͺ¨λ λμμμ κ΄λ¦¬ν μ μμ΅λλ€. μ΄λ μ₯κΈ°μ μΈ μΉμ¬μ΄νΈ μ μ§λ³΄μ ν¨μ¨μ±μ λμ¬μ€λλ€.
μ νλΈ νμ μ°½ λ°©μμ μ¬μ©νλ©΄ PageSpeed Insights μ μκ° μ λ§ 100μ μ΄ λλμ?
μ΄ λ°©λ²μ λμμ iframeκ³Ό μ΄λ‘ μΈν΄ λ°μνλ μλνν° μΏ ν€ λ‘λλ₯Ό μ΄κΈ° νμ΄μ§ λ‘λ©μμ μμ ν μ κ±°νμ¬, μΉμ¬μ΄νΈμ Core Web Vitals μ μλ₯Ό κ·Ήμ μΌλ‘ κ°μ ν©λλ€. μΌλ°μ μΌλ‘ λμμ μ½μ
μΈ λ€λ₯Έ μ±λ₯ λ¬Έμ κ° μλ€λ©΄ 100μ λλ κ·Έμ μ€νλ λμ μ μλ₯Ό λ¬μ±ν μ μμ΅λλ€. μ΄λ λ¬΄κ±°μ΄ λ¦¬μμ€λ₯Ό νμν λλ§ λ‘λνλ 'μ§μ° λ‘λ©(Lazy Loading)'μ μ΅μ νλ ꡬν λ°©μμ
λλ€.
νμ μ°½μΌλ‘ μ€μ νλ©΄ λͺ¨λ°μΌ μ¬μ©μ κ²½νμ μ΄λ»κ² λλμ?
μ 곡λ CSS μ½λμ width: 90%; max-width: 960px; λ° aspect-ratio: 16 / 9;κ° μ μ©λμ΄ λͺ¨λ°μΌ νκ²½μμλ νμ
μ°½μ΄ νλ©΄ μ€μμ λ°μνμΌλ‘ λ¨κ² λ©λλ€. λν μ¬μ©μκ° μ§μ λμμμ ν΄λ¦ν΄μΌ μ¬μλλ―λ‘, μμΉ μλ λ°μ΄ν° μ¬μ©μ΄λ μ¬μ΄λ λ°μμ λ§μ λͺ¨λ°μΌ μ¬μ©μ κ²½νμ μ€νλ € κ°μ ν©λλ€.
νλμ νμ΄μ§μ μ¬λ¬ κ°μ μ νλΈ νμ λμμμ λ£μ μ μλμ?
λ€, κ°λ₯ν©λλ€. λ€λ§, μ 곡λ μ€ν¬λ¦½νΈλ const videoSrcκ° λ¨μΌ μμ μ£Όμλ₯Ό κ°μ§κ³ μμΌλ―λ‘, μ¬λ¬ κ°μ λμμμ μ¬μ©νλ €λ©΄ JavaScript λ‘μ§μ μμ ν΄μΌ ν©λλ€. μλ₯Ό λ€μ΄, μΈλ€μΌ μ΄λ―Έμ§μ data-video-id μμ±μ μμ μ£Όμλ₯Ό μ μ₯νκ³ , openModal ν¨μ λ΄μμ ν΄λ¦λ μ΄λ―Έμ§μ data-video-idλ₯Ό μ½μ΄μ videoFrame.srcμ μ€μ νλλ‘ μ½λλ₯Ό νμ₯ν΄μΌ ν©λλ€.
λͺ¨λ¬μ°½ λ«κΈ° λ²νΌ(X) μΈμ λ€λ₯Έ λ°©λ²μΌλ‘λ νμ μ°½μ λ«μ μ μλμ?
λ€. μ 곡λ μ€ν¬λ¦½νΈμ window.onclick ν¨μλ μ¬μ©μκ° λͺ¨λ¬ μ°½ μΈλΆμ λ°°κ²½(.modal)μ ν΄λ¦νμ λλ νμ
μ°½μ λ«κ³ λμμ μ¬μμ μ€μ§νλλ‘ μ€μ λμ΄ μμ΅λλ€. μ΄λ μ¬μ©μμκ² μ§κ΄μ μΈ λ«κΈ° κΈ°λ₯μ μ 곡ν©λλ€.