{"id":861,"date":"2026-06-26T13:39:03","date_gmt":"2026-06-26T13:39:03","guid":{"rendered":"https:\/\/aabbee.cafe24.com\/?p=861"},"modified":"2026-06-26T13:39:03","modified_gmt":"2026-06-26T13:39:03","slug":"scrolleffect","status":"publish","type":"post","link":"https:\/\/coalacoding.com\/?p=861","title":{"rendered":"scrollEffect"},"content":{"rendered":"<h2>1. \uc2a4\ud06c\ub864 \ud6a8\uacfc\ub97c \ub9cc\ub4e4\uc5b4\ubcf4\uc790<\/h2>\n<h3>1.1. 1\ub2e8\uacc4-\uc139\uc1581<\/h3>\n<h4>1.1.1. \uc88c\uc6b0\uc774\ub3d9 &#8211; css \uba54\uc11c\ub4dc \ud65c\uc6a9<\/h4>\n<h4>\uc608\uc81c<\/h4>\n<p><a href=\"https:\/\/qwerewqwerew.github.io\/source\/jq\/14\/step1\/play.html\">\ubbf8\ub9ac\ubcf4\uae30<\/a><\/p>\n<blockquote>\n<p><strong>Note<\/strong>: \uc774 \ucf54\ub4dc\ub294 \uc7a0\uc7ac\uc801\uc778 \ubc84\uadf8\uac00 \uc788\ub2e4. \uc791\uc131\ud6c4 \uc5b4\ub5a4 \ubc84\uadf8\uac00 \ubc1c\uc0dd\ud560\uc218 \uc788\uc744\uc9c0 \uc608\uc0c1\ud574\ubcf4\uc790<\/p>\n<\/blockquote>\n<h4>HTML<\/h4>\n<pre><code class=\"language-html\">&lt;!DOCTYPE html&gt;\n&lt;html lang=&quot;ko&quot;&gt;\n  &lt;head&gt;\n    &lt;meta charset=&quot;UTF-8&quot; \/&gt;\n    &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot; \/&gt;\n    &lt;title&gt;Document&lt;\/title&gt;\n    &lt;link rel=&quot;stylesheet&quot; href=&quot;css\/jq-01.css&quot; \/&gt;\n    &lt;script src=&quot;https:\/\/code.jquery.com\/jquery-3.7.1.min.js&quot;&gt;&lt;\/script&gt;\n    &lt;script src=&quot;js\/jq-01.js&quot; defer&gt;&lt;\/script&gt;\n  &lt;\/head&gt;\n\n  &lt;body&gt;\n    &lt;section class=&quot;section1&quot;&gt;\n      &lt;h2&gt;section1&lt;\/h2&gt;\n      &lt;div class=&quot;container&quot;&gt;\n        &lt;div class=&quot;box box1 bg2&quot;&gt;&lt;\/div&gt;\n        &lt;div class=&quot;box box2 bg3&quot;&gt;&lt;\/div&gt;\n      &lt;\/div&gt;\n    &lt;\/section&gt;\n    &lt;section class=&quot;section2&quot;&gt;\n      &lt;h2&gt;section2&lt;\/h2&gt;\n      &lt;div class=&quot;box box1 bg4&quot;&gt;&lt;\/div&gt;\n      &lt;div class=&quot;box box2 bg5&quot;&gt;&lt;\/div&gt;\n    &lt;\/section&gt;\n    &lt;section class=&quot;section3&quot;&gt;\n      &lt;h2&gt;section3&lt;\/h2&gt;\n      &lt;div class=&quot;box box1 bg2&quot;&gt;&lt;\/div&gt;\n      &lt;div class=&quot;box box2 bg1&quot;&gt;&lt;\/div&gt;\n    &lt;\/section&gt;\n    &lt;section class=&quot;section4&quot;&gt;\n      &lt;h2&gt;section4&lt;\/h2&gt;\n      &lt;div class=&quot;box box1 bg2&quot;&gt;&lt;\/div&gt;\n      &lt;div class=&quot;box box2 bg1&quot;&gt;&lt;\/div&gt;\n    &lt;\/section&gt;\n    &lt;section class=&quot;section5&quot;&gt;\n      &lt;h2&gt;section5&lt;\/h2&gt;\n      &lt;div class=&quot;box box1 bg2&quot;&gt;&lt;\/div&gt;\n      &lt;div class=&quot;box box2 bg3&quot;&gt;&lt;\/div&gt;\n    &lt;\/section&gt;\n  &lt;\/body&gt;\n&lt;\/html&gt;\n<\/code><\/pre>\n<h4>CSS<\/h4>\n<pre><code class=\"language-css\">* {\n  margin: 0;\n  padding: 0;\n}\n:root {\n  --bg1: #285dfb;\n  --bg2: #537dfb;\n  --bg3: #7e9efc;\n  --bg4: #a9befd;\n  --bg5: #d4dffe;\n}\n.bg1 {\n  background-color: var(--bg1);\n  color: var(--bg5);\n}\n.bg2 {\n  background-color: var(--bg2);\n  color: var(--bg4);\n}\n.bg3 {\n  background-color: var(--bg3);\n  color: var(--bg3);\n}\n.bg4 {\n  background-color: var(--bg4);\n  color: var(--bg2);\n}\n.bg5 {\n  background-color: var(--bg5);\n  color: var(--bg1);\n}\nsection {\n  overflow: hidden;\n  text-align: center;\n  width: 100%;\n  height: 100vh;\n}\n\nsection h2 {\n  padding: 12vw 6vw;\n}\n<\/code><\/pre>\n<pre><code class=\"language-css\">.box {\n  display: inline-block; \/* clamp (\ucd5c\uc18c,\uae30\ubcf8,\ucd5c\ub300)\ucd5c\uc18c, \ucd5c\ub300\uac00 \uba85\ud655\ud55c \uacbd\uc6b0 \uc0ac\uc6a9\uac00\ub2a5 *\/\n  width: clamp(100px, 30%, 100%);\n  height: 300px;\n  transition: all 2s;\n}\n.box1 {\n  transform: translateX(-200%);\n}\n.box2 {\n  transform: translateX(200%);\n}\n.box.in {\n  transform: translateX(-200%);\n}\n<\/code><\/pre>\n<h4>JS<\/h4>\n<pre><code class=\"language-js\">$(window).on(&#39;scroll&#39;, () =&gt; {\n  let winSCT;\n  const sections = $(&#39;section&#39;);\n  winSCT = $(window).scrollTop();\n  sections.each(function (idx, o) {\n    $(o).addClass(`bg${idx + 1}`);\n    const tg = $(this);\n    const tgtop = tg.offset().top;\n    if (winSCT &gt; tgtop) {\n      tg.find(&#39;.box&#39;).css(&#39;transform&#39;, &#39;translateX(0%)&#39;);\n    } else if (winSCT &gt; tgtop) {\n      tg.find(&#39;.box&#39;).css(&#39;transform&#39;, &#39;translateX(0%)&#39;);\n    } else if (winSCT &gt; tgtop) {\n      tg.find(&#39;.box&#39;).css(&#39;transform&#39;, &#39;translateX(0%)&#39;);\n    }\n  });\n});\n<\/code><\/pre>\n<blockquote>\n<p><strong>Note<\/strong>: \uccab\ubc88\uc9f8 \uc139\uc158\uc5d0 \ub3c4\ub2ec\uc2dc \uc560\ub2c8\uba54\uc774\ud2b8\uac00 \uc2e4\ud589\ub41c\ub2e4. \ubc18\ubcf5\ubb38 \ub0b4\uc5d0\uc11c \uc21c\ud68c\ud558\ub294 this \uc758 \uac70\ub9ac\ub97c \ube44\uad50\ud558\uace0 \uc788\uc73c\ubbc0\ub85c \uc870\uac74 \ucd94\uac00\uc2dc \ub2e4\uc74c \uc139\uc158\uc758 \uac70\ub9ac\ub97c \ube44\uad50\ud558\uc5ec \uc560\ub2c8\uba54\uc774\ud2b8\uac00 \uc2e4\ud589\ub41c\ub2e4.<\/p>\n<\/blockquote>\n<h3>1.2. 2\ub2e8\uacc4-\uc139\uc1582<\/h3>\n<h4>1.2.1. \uc0c1\ud558\uc774\ub3d9 \uc2dc\uac04\ucc28-animate() \uba54\uc11c\ub4dc \ud65c\uc6a9<\/h4>\n<h4>\uc608\uc81c<\/h4>\n<p><a href=\"https:\/\/qwerewqwerew.github.io\/source\/jq\/14\/step2\/play.html\">\uc644\uc131\ud654\uba74<\/a><\/p>\n<h4>HTML<\/h4>\n<pre><code class=\"language-html\">&lt;section class=&quot;section2&quot;&gt;\n  &lt;h2&gt;section2&lt;\/h2&gt;\n  &lt;div class=&quot;gallery&quot;&gt;\n    &lt;div class=&quot;box bg3&quot;&gt;&lt;\/div&gt;\n    &lt;div class=&quot;box bg4&quot;&gt;&lt;\/div&gt;\n    &lt;div class=&quot;box bg5&quot;&gt;&lt;\/div&gt;\n  &lt;\/div&gt;\n&lt;\/section&gt;\n<\/code><\/pre>\n<blockquote>\n<p><strong>Note<\/strong>: section2\uc758 \uad6c\uc870\ub97c \uc218\uc815\ud55c\ub2e4.<\/p>\n<\/blockquote>\n<h4>CSS<\/h4>\n<pre><code class=\"language-css\">.section1 .box {\n  display: inline-block;\n  \/* \ucd5c\uc18c, \ucd5c\ub300\uac00 \uba85\ud655\ud55c \uacbd\uc6b0 \uc0ac\uc6a9\uac00\ub2a5 *\/\n  width: clamp(100px, 30%, 100%);\n  height: 300px;\n  transition: all 2s;\n}\n\n.section1 .box1 {\n  transform: translateX(-200%);\n}\n\n.section1 .box2 {\n  transform: translateX(200%);\n}\n\n.section1 .box.in {\n  transform: translateX(-200%);\n}\n\n.section2 {\n  position: relative;\n}\n.section2 .gallery {\n  position: relative;\n}\n.section2 .gallery .box {\n  width: 15vw;\n  height: 200px;\n  position: absolute;\n  opacity: 0;\n  top: 100vw;\n}\n\n.section2 .bg3 {\n  left: 10vw;\n}\n\n.section2 .bg4 {\n  left: 40vw;\n}\n\n.section2 .bg5 {\n  right: 10vw;\n}\n<\/code><\/pre>\n<blockquote>\n<p><strong>Note<\/strong>: css\ub97c \ucd94\uac00\ud55c\ub2e4.<\/p>\n<\/blockquote>\n<h4>JQ<\/h4>\n<pre><code class=\"language-js\">const sections = $(&#39;section&#39;);\nlet speed = Math.floor(sections.outerHeight() * 0.2);\nlet topArr = [];\nlet winSCT;\n\nsections.each((idx, section) =&gt; {\n  $(section).addClass(`bg${idx + 1}`);\n  const sectionTop = $(section).offset().top;\n  topArr.push(sectionTop);\n});\n\n$(window).on(&#39;scroll&#39;, () =&gt; {\n  winSCT = $(window).scrollTop();\n  if (winSCT &gt; topArr[0] winSCT &lt; topArr[1] - speed) {\n    sections.eq(0).find(&#39;.box&#39;).css(&#39;transform&#39;, &#39;translateX(0%)&#39;);\n  }\n  if (winSCT &gt; topArr[1] winSCT &lt; topArr[2]) {\n    sections.eq(1).find(&#39;.bg3&#39;).stop().delay(0).animate({ top: &#39;5vw&#39;, opacity: 1 }, 500, &#39;swing&#39;);\n    sections.eq(1).find(&#39;.bg4&#39;).stop().delay(100).animate({ top: &#39;0vw&#39;, opacity: 1 }, 800, &#39;swing&#39;);\n    sections.eq(1).find(&#39;.bg5&#39;).stop().delay(200).animate({ top: &#39;-5vw&#39;, opacity: 1 }, 1100, &#39;swing&#39;);\n  }\n});\n<\/code><\/pre>\n<p>:::note 1\ub2e8\uacc4\uc758 \ucf54\ub4dc\ub294 \ud06c\uac8c 4\uac00\uc9c0\uc758 \ubc84\uadf8\uac00 \ubc1c\uc0dd\ud560\uc218 \uc788\ub2e4.<\/p>\n<ol>\n<li>\uc911\ubcf5\ub41c \uc870\uac74: if (winSCT &gt; tgtop)\uac19\uc740 \uc870\uac74\uc744 \uc138\ubc88 \ubc18\ubcf5 \ud558\uc5ec \ube44\uad50\ud558\uace0 \uc788\ub2e4. \uac19\uc740 \uc870\uac74\uc774 \uc131\ub9bd\ub418\uba74 .box \uc694\uc18c\uc758 \uc2a4\ud0c0\uc77c \ub610\ud55c \uc5ec\ub7ec\ubc88 \uc124\uc815\ub420 \uc218 \uc788\ub2e4.\n<ol>\n<li>\uc139\uc158\ubcc4 offsetTop \uac12\uc744 \ubc30\uc5f4\ub85c \uc800\uc7a5\ud558\uc5ec \uc774\ubca4\ud2b8 \ud578\ub4e4\ub7ec\uc5d0 \uc804\ub2ec\ud55c\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<li>\ubd80\uc801\uc808\ud55c \ube44\uad50 \uc5f0\uc0b0\uc790: \ubaa8\ub4e0 else if \ubb38\uc758 \uc870\uac74\uc774 winSCT &gt; tgtop\uc73c\ub85c \uc124\uc815\ub418\uc5b4 \uc788\uc73c\ubbc0\ub85c \uccab \ubc88\uc9f8 if \ubb38\uacfc \ub3d9\uc77c\ud55c \uc870\uac74\uc774\ub2e4. \uacb0\uad6d \ub450 \ubc88\uc9f8\uc640 \uc138 \ubc88\uc9f8 else if \ubb38\uc740 \uc2e4\ud589\ub418\uc9c0 \uc54a\ub294\ub2e4.\n<ol>\n<li>\ubc30\uc5f4\uc758 \uc778\ub371\uc2a4 \ubc88\ud638\ub97c \ud65c\uc6a9\ud558\uc5ec \uc870\uac74\uc744 \uba85\ud655\ud558\uac8c \uc9c0\uc815\ud55c\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<li>\ubcc0\uc218 \ubc94\uc704(scope): winSCT, sections, tg, \uadf8\ub9ac\uace0 tgtop \ubcc0\uc218\ub294 \ubaa8\ub450 \ud568\uc218 \ub0b4\ubd80\uc5d0\uc11c \uc120\uc5b8\ub418\uc5c8\ub2e4. \uac01 \uc139\uc158 \ubc18\ubcf5\ubb38\ub9c8\ub2e4 \uc0c8\ub85c\uc6b4 \ubcc0\uc218 \uc778\uc2a4\ud134\uc2a4\uac00 \uc0dd\uc131\ub418\ubbc0\ub85c \uc6d0\ud558\ub294 \uacb0\uacfc\ub97c \uc5bb\uc744 \uc218 \uc5c6\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n<ol>\n<li>\uc804\uc5ed\ubcc0\uc218\ub85c \uc218\uc815\ud55c\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<li>\uc911\ucca9\ub41c \uc2a4\ud06c\ub864 \uc774\ubca4\ud2b8 \ud578\ub4e4\ub7ec: \uc774\ubca4\ud2b8 \ud578\ub4e4\ub7ec \ud568\uc218\ub97c \ucd5c\uc0c1\uc704 \ub808\ubca8\ub85c \uc791\uc131\ud558\uac8c \ub420\uacbd\uc6b0 \ucd94\ud6c4 \ud558\uc704\uc5d0 \ub2e4\ub978 \uc774\ubca4\ud2b8\ud578\ub4e4\ub7ec\ub97c \ud3ec\ud568\ud558\uac8c \ub418\uc5b4 \uc608\uae30\uce58 \ubabb\ud55c \ub3d9\uc791\uc744 \ucd08\ub798\ud560\uc218 \uc788\ub2e4.\n<ol>\n<li>\ubc18\ubcf5\ubb38\uacfc \uc774\ubca4\ud2b8 \ud578\ub4e4\ub7ec\ub97c \ubd84\ub9ac\ud55c\ub2e4.<br \/>\n:::<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<h3>1.3. 3\ub2e8\uacc4-\uc139\uc1583<\/h3>\n<h4>1.3.1. \ub9ac\ube4c\ud6a8\uacfc-addClass() \uba54\uc11c\ub4dc \ud65c\uc6a9<\/h4>\n<blockquote>\n<p>\ub9c8\uc2a4\ud06c\ud6a8\uacfc\ub97c \uad6c\ud604\ud574\ubcf4\uc790<\/p>\n<\/blockquote>\n<h4>\uc608\uc81c<\/h4>\n<p><a href=\"https:\/\/qwerewqwerew.github.io\/source\/jq\/14\/step3\/play.html\">\ubbf8\ub9ac\ubcf4\uae30<\/a><\/p>\n<h4>HTML<\/h4>\n<pre><code class=\"language-html\">&lt;section class=&quot;section3&quot;&gt;\n  &lt;div class=&quot;item&quot;&gt;\n    &lt;h2&gt;section3&lt;\/h2&gt;\n    &lt;figure&gt;\n      &lt;img src=&quot;http:\/\/qwerew.cafe24.com\/images\/1.jpg&quot; alt=&quot;&quot; \/&gt;\n      &lt;figcaption&gt;yum yum&lt;\/figcaption&gt;\n    &lt;\/figure&gt;\n  &lt;\/div&gt;\n  &lt;div class=&quot;item&quot;&gt;\n    &lt;p&gt;Lorem ipsum dolor sit amet consectetur adipisicing elit. Saepe est nostrum amet eligendi quas fugit libero cumque deserunt voluptate placeat dolorum culpa praesentium reiciendis, aliquid ad illum laborum, harum ratione.&lt;\/p&gt;\n  &lt;\/div&gt;\n&lt;\/section&gt;\n<\/code><\/pre>\n<h4>CSS<\/h4>\n<pre><code class=\"language-css\">.section3 {\n  display: flex;\n  color: #333;\n  gap: 2rem;\n}\n\n.section3 .item:nth-child(1) {\n  flex-basis: 60%;\n}\n\n.section3 .item:nth-child(2) {\n  flex-basis: 40%;\n  align-self: center;\n}\n\n.section3 figure {\n  position: relative;\n  box-shadow: -1rem 1rem 3rem -2rem rgba(0, 0, 0, 0.5);\n}\n\n.section3 figure:before {\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  background: var(--bg1);\n  transition: clip-path 0.8s cubic-bezier(0.18, 0.89, 0.32, 1.28);\n}\n\n.section3 figure img {\n  width: 100%;\n  display: block;\n  clip-path: inset(0 100% 0 0);\n  \/* duration 0.6 delay 0.3 *\/\n  transition: clip-path 0.6s 0.3s cubic-bezier(0.18, 0.89, 0.32, 1.28);\n}\n\n.section3 figure figcaption {\n  position: absolute;\n  top: 20px;\n  right: 20px;\n  padding: 10px;\n  font-weight: bold;\n  text-transform: uppercase;\n  color: #fff;\n  background: var(--bg1);\n  mix-blend-mode: difference;\n  transition: clip-path 0.3s 0.9s cubic-bezier(0.18, 0.89, 0.32, 1.28);\n}\n\n.section3 figure::before,\n.section3 figure figcaption {\n  clip-path: inset(0 0 0 100%);\n}\n\n.section3.is-animated figure::before,\n.section3.is-animated figure img,\n.section3.is-animated figure figcaption {\n  clip-path: inset(0);\n}\n<\/code><\/pre>\n<blockquote>\n<p><strong>Note<\/strong>: 1. <code>clip-path: inset(0 100% 0 0);<\/code> inset() \ud568\uc218\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc694\uc18c\uc758 \ubcf4\uc774\ub294 \ubd80\ubd84\uc744 \uc124\uc815. inset() \ud568\uc218\ub294 \uc0ac\uac01\ud615 \ud615\ud0dc\uc758 \ud074\ub9ac\ud551 \uc601\uc5ed\uc744 \ub9cc\ub4e4\uba70, \uc778\uc218\ub294 \uac01\uac01 \uc0c1\ub2e8, \uc624\ub978\ucabd, \ud558\ub2e8, \uc67c\ucabd \ubcc0\uc5d0\uc11c \uc5bc\ub9c8\ub098 \uc548\ucabd\uc73c\ub85c \ub4e4\uc5b4\uac00\ub294\uc9c0\ub97c \ub098\ud0c0\ub0c4. \uacb0\uacfc\uc801\uc73c\ub85c \uc0c1\ub2e8\uc5d0\uc11c\ub294 \ub0b4\ubd80\ub85c \ub4e4\uc5b4\uac00\uc9c0 \uc54a\uace0(0), \uc624\ub978\ucabd\uc5d0\uc11c\ub294 \uc694\uc18c \ub108\ube44 \uc804\uccb4\ub9cc\ud07c \ub0b4\ubd80\ub85c \ub4e4\uc5b4\uac04\ub2e4(100%).<br \/>\n2. \ucc38\uc870\ub9c1\ud06c <a href=\"https:\/\/bennettfeely.com\/clippy\/\">\ud074\ub9bd\ud328\uc2a4\uc0dd\uc131\uae30<\/a><br \/>\n3. \ucc38\uc870\ub9c1\ud06c <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/CSS\/clip-path\">MDN<\/a><br \/>\n4. <code>.section3<\/code> \uc5d0 <code>.is-animated<\/code> \ud074\ub798\uc2a4\uac00 \ucd94\uac00\ub418\uba74 clip-path\uc758 \uc88c\ud45c\ub97c \ubcc0\uacbd\ud55c\ub2e4.<\/p>\n<\/blockquote>\n<h4>JQ<\/h4>\n<pre><code class=\"language-js\">...\uc0dd\ub7b5\nif (winSCT &gt; topArr[2] &amp;&amp; winSCT &lt; topArr[3]-speed) {\n  sections.eq(2).addClass(&#39;is-animated&#39;);\n}\n<\/code><\/pre>\n<blockquote>\n<p><strong>Note<\/strong>: \uc870\uac74\ubb38\uc744 \ucd94\uac00\ud55c\ub2e4.<\/p>\n<\/blockquote>\n<h3>1.4. 4\ub2e8\uacc4-\uc139\uc1584<\/h3>\n<h4>1.4.1. PIP\uc2a4\ud06c\ub864<\/h4>\n<blockquote>\n<p>\ud654\uba74\uc548\uc758 \ud654\uba74\uc774 \uc2a4\ud06c\ub864 \ub418\ub294 \ud6a8\uacfc\ub97c \ub9cc\ub4e4\uc5b4\ubcf4\uc790<\/p>\n<\/blockquote>\n<h4>\uc608\uc81c<\/h4>\n<blockquote>\n<p><strong>Note<\/strong>: \uc544\ub798\uc758 \uc774\ubbf8\uc9c0 \ud30c\uc77c\uc744 \ub2e4\uc6b4\ub85c\ub4dc \ud55c\ub2e4<br \/>\n<a href=\"https:\/\/qwerewqwerew.github.io\/source\/jq\/14\/step4\/image.zip\">\uc644\uc131\ud654\uba74<\/a><\/p>\n<\/blockquote>\n<p><a href=\"https:\/\/qwerewqwerew.github.io\/source\/jq\/14\/step4\/play.html\">\ubbf8\ub9ac\ubcf4\uae30<\/a><\/p>\n<h4>HTML<\/h4>\n<pre><code class=\"language-html\">&lt;section class=&quot;section4&quot;&gt;\n  &lt;h2&gt;section4&lt;\/h2&gt;\n  &lt;div class=&quot;container&quot;&gt;\n    &lt;div class=&quot;item left pa&quot;&gt;\n      &lt;div class=&quot;mockup pc&quot;&gt;\n        &lt;div class=&quot;mask&quot;&gt;&lt;img src=&quot;image\/project1_pc.png&quot; alt=&quot;&quot; class=&quot;screen&quot; \/&gt;&lt;\/div&gt;\n        &lt;img src=&quot;image\/desktop.png&quot; alt=&quot;&quot; class=&quot;device&quot; \/&gt;\n      &lt;\/div&gt;\n      &lt;div class=&quot;mockup mobile&quot;&gt;\n        &lt;div class=&quot;mask&quot;&gt;&lt;img src=&quot;image\/project1_mobile.png&quot; alt=&quot;&quot; class=&quot;screen&quot; \/&gt;&lt;\/div&gt;\n        &lt;img src=&quot;image\/mobile.png&quot; alt=&quot;&quot; class=&quot;device&quot; \/&gt;\n      &lt;\/div&gt;\n    &lt;\/div&gt;\n    &lt;div class=&quot;item right bg1 pa&quot;&gt;&lt;\/div&gt;\n  &lt;\/div&gt;\n&lt;\/section&gt;\n<\/code><\/pre>\n<h4>CSS<\/h4>\n<pre><code class=\"language-css\">.section4 .container {\n  display: flex;\n  position: relative;\n}\n.pa {\n  position: absolute;\n  top: 0;\n}\n\n.item {\n  height: 30vw;\n}\n.left {\n  width: 60vw;\n  transition: left 1s ease-in-out;\n  left: -100%;\n}\n.right {\n  width: 40vw;\n  right: 0;\n}\n.is-animated .left {\n  left: 0;\n}\n.left .mockup img,\n.left .mockup .mask {\n  position: absolute;\n  top: 0;\n  left: 0;\n}\n.left .mockup.pc {\n  margin-left: clamp(5%, 100px, 10%);\n  position: relative;\n  width: 60%;\n  height: 100%;\n}\n\n.left .mockup.pc .mask {\n  z-index: 3;\n  width: 32.3vw;\n  height: 61.8%;\n  overflow: hidden;\n  top: 6%;\n  left: 5.2%;\n}\n.left .mockup.pc img.screen {\n  z-index: 1;\n  width: 100%;\n}\n.left .mockup.pc img.device {\n  z-index: 2;\n  width: 100%;\n}\n\/* mobile *\/\n.left .mockup.mobile {\n  z-index: 99;\n  position: relative;\n  top: -76%;\n  left: 58%;\n  width: 20%;\n  height: 60%;\n}\n\n.left .mockup.mobile .mask {\n  z-index: 999;\n  width: 10.5vw;\n  height: 100%;\n  overflow: hidden;\n  top: 10.8%;\n  left: 7%;\n  border-radius: 16px 16px 0 0;\n}\n.left .mockup.mobile img.screen {\n  z-index: 3;\n  width: 100%;\n}\n.left .mockup.mobile img.device {\n  z-index: 4;\n  width: 100%;\n}\n<\/code><\/pre>\n<h4>JQ<\/h4>\n<pre><code class=\"language-js\">$(() =&gt; {\n  const sections = $(&#39;section&#39;);\n  let speed = Math.floor(sections.outerHeight() * 0.3);\n  let topArr = [];\n  let winSCT;\n\n  sections.each((idx, section) =&gt; {\n    $(section).addClass(`bg${idx + 1}`);\n    const sectionTop = $(section).offset().top;\n    topArr.push(sectionTop);\n  });\n\n  \/* \uc2a4\ud06c\ub864\ud568\uc218 *\/\n  $(window).on(&#39;scroll&#39;, () =&gt; {\n    winSCT = $(window).scrollTop();\n    if (winSCT &gt; topArr[0] &amp;&amp; winSCT &lt; topArr[1] - speed) {\n      sections.eq(0).find(&#39;.box&#39;).css(&#39;transform&#39;, &#39;translateX(0%)&#39;);\n    }\n\n    if (winSCT &gt; topArr[1] &amp;&amp; winSCT &lt; topArr[2] - speed) {\n      sections.eq(1).find(&#39;.bg3&#39;).stop().delay(100).animate({ top: 0, opacity: 1 }, 500, &#39;swing&#39;);\n      sections.eq(1).find(&#39;.bg4&#39;).stop().delay(200).animate({ top: -100, opacity: 1 }, 800, &#39;swing&#39;);\n      sections.eq(1).find(&#39;.bg5&#39;).stop().delay(300).animate({ top: -200, opacity: 1 }, 1100, &#39;swing&#39;);\n    }\n\n    if (winSCT &gt; topArr[2] &amp;&amp; winSCT &lt; topArr[3] - speed) {\n      console.log(winSCT &gt; topArr[2] &amp;&amp; winSCT &lt; topArr[3]);\n      sections.eq(2).addClass(&#39;is-animated&#39;);\n    }\n    if (winSCT &gt; topArr[3] &amp;&amp; winSCT &lt; topArr[4]) {\n      sections.eq(3).addClass(&#39;is-animated&#39;);\n    }\n  });\n  pipScroll();\n  function pipScroll() {\n    const section = sections.eq(3);\n    const devices = [&#39;.mockup.pc&#39;, &#39;.mockup.mobile&#39;];\n\n    $.each(devices, function (i, deviceEl) {\n      const device = section.find(deviceEl);\n      const screen = device.find(&#39;.mask&gt;img&#39;);\n      const mask = device.find(&#39;.mask&#39;);\n      const heightDifference = screen.innerHeight() - mask.innerHeight();\n      console.log(device.innerHeight());\n      console.log(screen.innerHeight());\n\n      device.on({\n        mouseenter: function () {\n          if (section.hasClass(&#39;is-animated&#39;)) {\n            screen.stop().animate({ top: -heightDifference }, 1000);\n          }\n        },\n        mouseleave: function () {\n          if (section.hasClass(&#39;is-animated&#39;)) {\n            screen.stop().animate({ top: 0 }, 1000);\n          }\n        },\n      });\n    });\n  }\n}); \/\/jQuery\n<\/code><\/pre>\n<blockquote>\n<p><strong>Note<\/strong>: \ucc3d\ud06c\uae30 \ubcc0\uacbd\uc2dc \uc2a4\ud06c\ub864\uac12\uc744 \uc7ac\uacc4\uc0b0\ud558\ub294 \ud568\uc218 \ucd94\uac00 function pipScroll() \ub0b4\uc5d0 \uc791\uc131\ud55c\ub2e4.<\/p>\n<\/blockquote>\n<pre><code class=\"language-js\">\/\/ \uc708\ub3c4\uc6b0 \ud06c\uae30\uac00 \ubcc0\uacbd\ub420 \ub54c heightDifference\ub97c \ub2e4\uc2dc \uacc4\uc0b0.\nfunction pipScroll() {\n...\uc0dd\ub7b5\n$(window).on(&#39;resize&#39;, function () {\n  $.each(devices, function (i, deviceEl) {\n    let device = section.find(deviceEl);\n    let screen = device.find(&#39;.mask&gt;img&#39;);\n    let mask = device.find(&#39;.mask&#39;);\n    let heightDifference = screen.innerHeight() - mask.innerHeight();\n\n    \/\/ heightDifference\ub97c \ub2e4\uc2dc \uc124\uc815.\n    device.data(&#39;heightDifference&#39;, heightDifference);\n    console.log(heightDifference);\n      });\n    });\n  }\n})\/\/jQuery\n<\/code><\/pre>\n<h4>1.4.2. PIP\uc2a4\ud06c\ub864 \ubc1c\uc804\ud615<\/h4>\n<blockquote>\n<p>\uc5ec\ub7ec \uc139\uc158\uc5d0\uc11c \uc0ac\uc6a9\ud560\uc218 \uc0ac\uc6a9\ud560\uc218 \uc788\ub3c4\ub85d \ud568\uc218\ub97c \uc218\uc815\ud55c\ub2e4.<\/p>\n<\/blockquote>\n<h4>\uc608\uc81c<\/h4>\n<p><a href=\"https:\/\/qwerewqwerew.github.io\/source\/jq\/14\/step6\/play.html\">\ubbf8\ub9ac\ubcf4\uae30<\/a><\/p>\n<h4>HTML<\/h4>\n<pre><code class=\"language-html\">&lt;section class=&quot;section5&quot;&gt;\n  &lt;div class=&quot;container&quot;&gt;\n    &lt;div class=&quot;item left&quot;&gt;\n      &lt;div class=&quot;mockup pc&quot;&gt;\n        &lt;div class=&quot;mask&quot;&gt;\n          &lt;img src=&quot;image\/project1_pc.png&quot; alt=&quot;&quot; class=&quot;screen&quot; \/&gt;\n        &lt;\/div&gt;\n        &lt;img src=&quot;image\/desktop.png&quot; alt=&quot;&quot; class=&quot;device&quot; \/&gt;\n      &lt;\/div&gt;\n      \n      &lt;div class=&quot;mockup mobile&quot;&gt;\n        &lt;div class=&quot;mask&quot;&gt;&lt;img src=&quot;image\/project1_mobile.png&quot; alt=&quot;&quot; class=&quot;screen&quot; \/&gt;&lt;\/div&gt;\n        &lt;img src=&quot;image\/mobile.png&quot; alt=&quot;&quot; class=&quot;device&quot; \/&gt;\n      &lt;\/div&gt;\n      \n    &lt;\/div&gt;\n    \n    &lt;div class=&quot;item right bg1&quot;&gt;&lt;\/div&gt;\n  &lt;\/div&gt;\n  \n&lt;\/section&gt;\n<\/code><\/pre>\n<p>\uc139\uc158\ucd94\uac00<\/p>\n<h4>CSS<\/h4>\n<pre><code class=\"language-css\">.section5,\n.section4 {\n  position: relative;\n}\n.section5 .container,\n.section4 .container {\n  position: relative; \/* absolute\ub97c \uc81c\uc5b4\ud558\ub294 relative \ub294 \uaf2d \ud06c\uae30\ub97c \ub123\uc744\uac83  *\/\n  width: 100%;\n  height: 100%;\n}\n.section5 .item,\n.section4 .item {\n  position: absolute;\n  top: 0;\n  height: 30vw;\n}\n.section5 .item.left,\n.section4 .item.left {\n  width: 60%; \/*  *\/\n  transition: left 1s ease-in-out;\n  left: -100%;\n}\n.section5.is-animated .item.left,\n.section4.is-animated .item.left {\n  left: 0%;\n  transition: left 2s ease-in-out;\n}\n\n.section5 .item.right,\n.section4 .item.right {\n  width: 40%;\n  right: 0;\n}\n.section5 .mockup.pc .mask,\n.section4 .mockup.pc .mask {\n  z-index: 8;\n  width: 32.3vw;\n  height: 61.8%;\n  overflow: hidden;\n  left: 5.2%;\n  top: 6%;\n}\n<\/code><\/pre>\n<p>.section4 \uc120\ud0dd\uc790\uc5d0 .section5\ub97c \ucd94\uac00<\/p>\n<h4>JS<\/h4>\n<pre><code class=\"language-js\">const win = $(window);\nconst sections = $(&#39;section&#39;);\nlet speed = Math.floor(win.height() * 0.5);\nlet topArr = [];\nlet winSCT;\nconsole.log(speed);\n\/\/sections.offsetTop\nsections.each(function (i, o) {\n  const sectionTop = $(o).offset().top;\n  topArr.push(sectionTop);\n});\nwin.on(&#39;scroll&#39;, () =&gt; {\n  winSCT = win.scrollTop();\n  if (winSCT &gt; topArr[0] &amp;&amp; winSCT &lt; topArr[1]) {\n    sections.eq(0).addClass(&#39;is-animated&#39;).siblings().removeClass(&#39;is-animated&#39;);\n  }\n  if (winSCT &gt; topArr[1] - speed &amp;&amp; winSCT &lt; topArr[2]) {\n    sections.eq(1).addClass(&#39;is-animated&#39;).siblings().removeClass(&#39;is-animated&#39;);\n  }\n  if (winSCT &gt; topArr[2] - speed &amp;&amp; winSCT &lt; topArr[3]) {\n    sections.eq(2).addClass(&#39;is-animated&#39;).siblings().removeClass(&#39;is-animated&#39;);\n  }\n  if (winSCT &gt; topArr[3] - speed &amp;&amp; winSCT &lt; topArr[4]) {\n    sections.eq(3).addClass(&#39;is-animated&#39;).siblings().removeClass(&#39;is-animated&#39;);\n    pipScroll();\n    console.log(topArr[4], winSCT);\n  }\n  if (winSCT &gt; topArr[4] - speed) {\n    sections.eq(4).addClass(&#39;is-animated&#39;).siblings().removeClass(&#39;is-animated&#39;);\n    pipScroll();\n  }\n});\n\nfunction pipScroll() {\n  const devices = [&#39;.mockup.pc&#39;, &#39;.mockup.mobile&#39;];\n  $.each(devices, function (i, deviceEl) {\n    const device = $(deviceEl);\n    const screen = device.find(&#39;.screen&#39;);\n    const mask = device.find(&#39;.mask&#39;);\n    const hightDifference = screen.innerHeight() - mask.innerHeight();\n    console.log(&#39;hightDifference&#39;, hightDifference);\n    device.on({\n      mouseenter: function () {\n        screen.stop().animate({ top: -hightDifference }, 1000);\n      },\n      mouseleave: function () {\n        screen.stop().animate({ top: 0 }, 1000);\n      },\n    });\n  });\n}\nwin.on(&#39;resize&#39;, function () {\n  pipScroll();\n});\n<\/code><\/pre>\n<blockquote>\n<p>\uc704\uc758 \ucf54\ub4dc\ub294 \ud654\uba74\uc5d0\ub294 \ubcf4\uc774\uc9c0 \uc54a\uc9c0\ub9cc \ubc84\uadf8\uac00 \uc788\ub2e4. <code>[&#39;.mockup.pc&#39;, &#39;.mockup.mobile&#39;]<\/code> \uc5d0\ub294 \ub2e8\uc77c \uc694\uc18c\uac00 \ud560\ub2f9 \ub418\uc5c8\uc73c\ubbc0\ub85c\ub450\uac1c\uc758 mockup.pc \uac00 \ucd94\uac00 \ub420 \uacbd\uc6b0 \uac01\uac01 \ub3d9\uc791\ud558\uc9c0 \uc54a\ub294\ub2e4. \uc774\uac83\uc744 \uc81c\uc774\ucffc\ub9ac \uac1d\uccb4\ub85c \ubcc0\uacbd\ud558\uba74 \uc5ec\ub7ec\uac1c \uc694\uc18c\ub97c \uc54c\uc544\uc11c \ubc18\ubcf5 \ucc98\ub9ac \ud558\uae30 \ub54c\ubb38\uc5d0 \uac01\uac01 \ub2e4\ub978 \uc774\ubca4\ud2b8\ub97c \ucc98\ub9ac\ud560\uc218 \uc788\ub2e4. \uc544\ub798\ucc98\ub7fc \uc218\uc815\ud558\uc790<\/p>\n<\/blockquote>\n<pre><code class=\"language-js\">  function pipScroll() {\n    \/\/const devices = [&#39;.mockup.pc&#39;, &#39;.mockup.mobile&#39;];\n    const devices = $(&#39;.mockup.pc, .mockup.mobile&#39;);\n    \/\/$.each(devices, function (i, deviceEl) {\n    devices.each(function (i, deviceEl) {\n      let device = $(this);\n      let screen = device.find(&#39;.mask&gt;img&#39;);\n<\/code><\/pre>\n<h3>1.5. \uac00\ub85c \uc2a4\ud06c\ub864 \ud6a8\uacfc<\/h3>\n<h4>\uc608\uc81c<\/h4>\n<p><a href=\"https:\/\/qwerewqwerew.github.io\/source\/jq\/14\/step7\/1.html\">\ubbf8\ub9ac\ubcf4\uae30<\/a><\/p>\n<h4>HTML<\/h4>\n<pre><code class=\"language-html\">&lt;!DOCTYPE html&gt;\n&lt;html lang=&quot;en&quot;&gt;\n  &lt;head&gt;\n    &lt;meta charset=&quot;UTF-8&quot; \/&gt;\n    &lt;meta http-equiv=&quot;X-UA-Compatible&quot; content=&quot;IE=edge&quot; \/&gt;\n    &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot; \/&gt;\n    &lt;title&gt;&lt;\/title&gt;\n  &lt;\/head&gt;\n\n  &lt;body&gt;\n    &lt;main class=&quot;container&quot;&gt;\n      &lt;section id=&quot;section1&quot; class=&quot;item&quot;&gt;\n        &lt;h2 class=&quot;num&quot;&gt;01&lt;\/h2&gt;\n      &lt;\/section&gt;\n      &lt;section id=&quot;section2&quot; class=&quot;item&quot;&gt;\n        &lt;h2 class=&quot;num&quot;&gt;02&lt;\/h2&gt;\n      &lt;\/section&gt;\n      &lt;section id=&quot;section3&quot; class=&quot;item&quot;&gt;\n        &lt;h2 class=&quot;num&quot;&gt;03&lt;\/h2&gt;\n      &lt;\/section&gt;\n      &lt;section id=&quot;section4&quot; class=&quot;item&quot;&gt;\n        &lt;h2 class=&quot;num&quot;&gt;04&lt;\/h2&gt;\n      &lt;\/section&gt;\n      &lt;section id=&quot;section5&quot; class=&quot;item&quot;&gt;\n        &lt;h2 class=&quot;num&quot;&gt;05&lt;\/h2&gt;\n      &lt;\/section&gt;\n      &lt;section id=&quot;section6&quot; class=&quot;item&quot;&gt;\n        &lt;h2 class=&quot;num&quot;&gt;06&lt;\/h2&gt;\n      &lt;\/section&gt;\n      &lt;section id=&quot;section7&quot; class=&quot;item&quot;&gt;\n        &lt;h2 class=&quot;num&quot;&gt;07&lt;\/h2&gt;\n      &lt;\/section&gt;\n      &lt;section id=&quot;section8&quot; class=&quot;item&quot;&gt;\n        &lt;h2 class=&quot;num&quot;&gt;08&lt;\/h2&gt;\n      &lt;\/section&gt;\n      &lt;section id=&quot;section9&quot; class=&quot;item&quot;&gt;\n        &lt;h2 class=&quot;num&quot;&gt;09&lt;\/h2&gt;\n      &lt;\/section&gt;\n    &lt;\/main&gt;\n  &lt;\/body&gt;\n&lt;\/html&gt;\n<\/code><\/pre>\n<h4>CSS<\/h4>\n<pre><code class=\"language-css\">.container {\n  position: fixed;\n  left: 0;\n  top: 0;\n  display: flex;\n}\n.item {\n  width: 100vw;\n  height: 100vh;\n  position: relative;\n}\n#section1 {\n  background-color: #111;\n}\n#section2 {\n  background-color: #222;\n}\n#section3 {\n  background-color: #333;\n}\n#section4 {\n  background-color: #444;\n}\n#section5 {\n  background-color: #555;\n}\n#section6 {\n  background-color: #666;\n}\n#section7 {\n  background-color: #777;\n}\n#section8 {\n  background-color: #888;\n}\n#section9 {\n  background-color: #999;\n}\n\n.num {\n  position: absolute;\n  bottom: 20px;\n  right: 20px;\n  color: #fff;\n  font-size: 20vw;\n  z-index: 10000;\n}\n<\/code><\/pre>\n<h4>JS<\/h4>\n<p>\uc790\ubc14\uc2a4\ud06c\ub9bd\ud2b8\ub294 gsap \uc744 \uc0ac\uc6a9<\/p>\n<p><code> &lt;script src=&quot;https:\/\/unpkg.com\/gsap@3\/dist\/gsap.min.js&quot;&gt;&lt;\/script&gt;<\/code><\/p>\n<pre><code class=\"language-js\">const cont = document.querySelector(&#39;.container&#39;);\nconst item = document.querySelector(&#39;.item&#39;);\n\nfunction scroll() {\n  let scrollTop = window.scrollY;\n  let offsetLeft = cont.offsetWidth;\n  document.body.style.height = offsetLeft + &#39;px&#39;;\n\n  let viewWidth = offsetLeft - window.innerWidth;\n  let viewHeight = offsetLeft - window.innerHeight;\n  let goLeft = scrollTop * (viewWidth \/ viewHeight);\n\n  gsap.to(cont, { left: -goLeft });\n\n  requestAnimationFrame(scroll);\n}\nscroll();\n\nwindow.addEventListener(&#39;resize&#39;, scroll);\n<\/code><\/pre>\n<h4>JQ<\/h4>\n<pre><code class=\"language-js\">const cont = $(&#39;.container&#39;);\nfunction scroll() {\n  let scrollTop = $(window).scrollTop();\n  let offsetLeft = cont.outerWidth();\n  $(&#39;body&#39;).css(&#39;height&#39;, offsetLeft + &#39;px&#39;);\n\n  let viewWidth = offsetLeft - $(window).innerWidth();\n  let viewHeight = offsetLeft - $(window).innerHeight();\n  let goLeft = scrollTop * (viewWidth \/ viewHeight);\n\n  cont.css(&#39;left&#39;, -goLeft);\n  console.log(scrollTop, offsetLeft, viewWidth, goLeft, viewHeight);\n}\nscroll();\n$(window).on({\n  resize: function () {\n    scroll();\n  },\n  scroll: function () {\n    scroll();\n  },\n});\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>1. \uc2a4\ud06c\ub864 \ud6a8\uacfc\ub97c \ub9cc\ub4e4\uc5b4\ubcf4\uc790 1.1. 1\ub2e8\uacc4-\uc139\uc1581 1.1.1. \uc88c\uc6b0\uc774\ub3d9 &#8211; css \uba54\uc11c\ub4dc \ud65c\uc6a9 \uc608\uc81c \ubbf8\ub9ac\ubcf4\uae30 Note: \uc774 \ucf54\ub4dc\ub294 \uc7a0\uc7ac\uc801\uc778 \ubc84\uadf8\uac00 \uc788\ub2e4. \uc791\uc131\ud6c4 \uc5b4\ub5a4 \ubc84\uadf8\uac00 \ubc1c\uc0dd\ud560\uc218 \uc788\uc744\uc9c0 \uc608\uc0c1\ud574\ubcf4\uc790 HTML &lt;!DOCTYPE html&gt; &lt;html lang=&quot;ko&quot;&gt; &lt;head&gt; &lt;meta charset=&quot;UTF-8&quot; \/&gt; &lt;meta name=&quot;viewport&quot; content=&quot;width=device-width, initial-scale=1.0&quot; \/&gt; &lt;title&gt;Document&lt;\/title&gt; &lt;link rel=&quot;stylesheet&quot; href=&quot;css\/jq-01.css&quot; \/&gt; &lt;script src=&quot;https:\/\/code.jquery.com\/jquery-3.7.1.min.js&quot;&gt;&lt;\/script&gt; &lt;script src=&quot;js\/jq-01.js&quot; defer&gt;&lt;\/script&gt; &lt;\/head&gt; &lt;body&gt; &lt;section class=&quot;section1&quot;&gt; &lt;h2&gt;section1&lt;\/h2&gt; &#8230; <a title=\"scrollEffect\" class=\"read-more\" href=\"https:\/\/coalacoding.com\/?p=861\" aria-label=\"scrollEffect\uc5d0 \ub300\ud574 \ub354 \uc790\uc138\ud788 \uc54c\uc544\ubcf4\uc138\uc694\">\ub354 \uc77d\uae30<\/a><\/p>\n","protected":false},"author":0,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[26],"tags":[],"class_list":["post-861","post","type-post","status-publish","format-standard","hentry","category-html-css-ui"],"_links":{"self":[{"href":"https:\/\/coalacoding.com\/index.php?rest_route=\/wp\/v2\/posts\/861","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/coalacoding.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/coalacoding.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/coalacoding.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=861"}],"version-history":[{"count":0,"href":"https:\/\/coalacoding.com\/index.php?rest_route=\/wp\/v2\/posts\/861\/revisions"}],"wp:attachment":[{"href":"https:\/\/coalacoding.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=861"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/coalacoding.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=861"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/coalacoding.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=861"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}