{
    "componentChunkName": "component---src-templates-blog-post-js",
    "path": "/responsive-typography-with-css-clamp-function/",
    "result": {"data":{"markdownRemark":{"html":"<p>Without writing media queries, we can make font sizes responsive with just a single line of code, using the CSS <del>clamp()</del> function.</p>\n<p>With <del>clamp()</del>, font sizes dynamically scale with the size of the viewport, but do not go below a minimum font-size or above a maximum font size.</p>\n<p>We can use the <del>clamp()</del> function for sizing other design elements as well.</p>\n<p>The <del>clamp()</del> function takes three parameters in a specific order:</p>\n<ul>\n<li>The first argument specifies the minimum value. If the preferred value (the second argument) is less than this value, then the minimum value will be used.</li>\n<li>The second argument specifies the preferred value. This value is used as long as it is greater than the value of the first argument (lower bound) and less than the value of the third argument (upper bound).</li>\n<li>The third argument specifies the maximum value. This value is the largest value that the property will be set to.</li>\n</ul>\n<p>Let’s create a card using the <del>clamp()</del> function.</p>\n<div class=\"gatsby-code-title\">src/App.js</div>\n<pre class=\"grvsc-container synthwave-84\" data-language=\"jsx\" data-index=\"0\"><code class=\"grvsc-code\"><span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"1\"></span><span class=\"grvsc-source\"><span class=\"mtk8\">import</span><span class=\"mtk1\"> </span><span class=\"mtk3\">React</span><span class=\"mtk1\"> </span><span class=\"mtk10\">from</span><span class=\"mtk1\"> </span><span class=\"mtk16\">&quot;react&quot;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"2\"></span><span class=\"grvsc-source\"></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"3\"></span><span class=\"grvsc-source\"><span class=\"mtk10\">const</span><span class=\"mtk1\"> </span><span class=\"mtk6\">App</span><span class=\"mtk1\"> </span><span class=\"mtk12\">=</span><span class=\"mtk1\"> () </span><span class=\"mtk10\">=&gt;</span><span class=\"mtk1\"> {</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"4\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk10\">return</span><span class=\"mtk1\"> (</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"5\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">    </span><span class=\"mtk6\">&lt;</span><span class=\"mtk8\">div</span><span class=\"mtk1\"> </span><span class=\"mtk10\">className</span><span class=\"mtk12\">=</span><span class=\"mtk16\">&quot;card&quot;</span><span class=\"mtk6\">&gt;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"6\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">      </span><span class=\"mtk6\">&lt;</span><span class=\"mtk8\">h2</span><span class=\"mtk6\">&gt;</span><span class=\"mtk1\">Learn TypeScript</span><span class=\"mtk6\">&lt;/</span><span class=\"mtk8\">h2</span><span class=\"mtk6\">&gt;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"7\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">      </span><span class=\"mtk6\">&lt;</span><span class=\"mtk8\">p</span><span class=\"mtk6\">&gt;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"8\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">        Typed JavaScript at any scale. Catch errors and provide fixes before you</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"9\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">        run your code.</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"10\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">      </span><span class=\"mtk6\">&lt;/</span><span class=\"mtk8\">p</span><span class=\"mtk6\">&gt;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"11\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">      </span><span class=\"mtk6\">&lt;</span><span class=\"mtk8\">ul</span><span class=\"mtk6\">&gt;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"12\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">        </span><span class=\"mtk6\">&lt;</span><span class=\"mtk8\">li</span><span class=\"mtk6\">&gt;</span><span class=\"mtk1\">JavaScript and More</span><span class=\"mtk6\">&lt;/</span><span class=\"mtk8\">li</span><span class=\"mtk6\">&gt;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"13\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">        </span><span class=\"mtk6\">&lt;</span><span class=\"mtk8\">li</span><span class=\"mtk6\">&gt;</span><span class=\"mtk1\">A Result You Can Trust</span><span class=\"mtk6\">&lt;/</span><span class=\"mtk8\">li</span><span class=\"mtk6\">&gt;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"14\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">        </span><span class=\"mtk6\">&lt;</span><span class=\"mtk8\">li</span><span class=\"mtk6\">&gt;</span><span class=\"mtk1\">Gradual Adoption</span><span class=\"mtk6\">&lt;/</span><span class=\"mtk8\">li</span><span class=\"mtk6\">&gt;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"15\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">      </span><span class=\"mtk6\">&lt;/</span><span class=\"mtk8\">ul</span><span class=\"mtk6\">&gt;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"16\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">    </span><span class=\"mtk6\">&lt;/</span><span class=\"mtk8\">div</span><span class=\"mtk6\">&gt;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"17\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  )</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"18\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">}</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"19\"></span><span class=\"grvsc-source\"></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"20\"></span><span class=\"grvsc-source\"><span class=\"mtk8\">export</span><span class=\"mtk1\"> </span><span class=\"mtk10\">default</span><span class=\"mtk1\"> </span><span class=\"mtk3\">App</span></span></span></code></pre>\n<div class=\"gatsby-code-title\">src/index.css</div>\n<pre class=\"grvsc-container grvsc-has-line-highlighting synthwave-84\" data-language=\"css\" data-index=\"1\"><code class=\"grvsc-code\"><span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"1\"></span><span class=\"grvsc-source\"><span class=\"mtk8\">*</span><span class=\"mtk1\"> {</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"2\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">padding</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">0</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"3\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">margin</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">0</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"4\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">box-sizing</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk9\">border-box</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"5\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">}</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"6\"></span><span class=\"grvsc-source\"></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"7\"></span><span class=\"grvsc-source\"><span class=\"mtk8\">html</span><span class=\"mtk1\"> {</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"8\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">font-size</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">62.5%</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"9\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">font-family</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">sans-serif</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"10\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">}</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"11\"></span><span class=\"grvsc-source\"></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"12\"></span><span class=\"grvsc-source\"><span class=\"mtk10\">.card</span><span class=\"mtk1\"> {</span></span></span>\n<span class=\"grvsc-line grvsc-line-highlighted\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"13\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">width</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> clamp(</span><span class=\"mtk5\">15rem</span><span class=\"mtk1\">, </span><span class=\"mtk5\">40vw</span><span class=\"mtk1\">, </span><span class=\"mtk5\">30rem</span><span class=\"mtk1\">);</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"14\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">padding</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">2rem</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"15\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">border</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">0.1rem</span><span class=\"mtk1\"> </span><span class=\"mtk9\">solid</span><span class=\"mtk1\"> </span><span class=\"mtk9\">gray</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"16\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">border-radius</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">1rem</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"17\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">margin</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">3rem</span><span class=\"mtk1\"> </span><span class=\"mtk9\">auto</span><span class=\"mtk1\"> </span><span class=\"mtk5\">0</span><span class=\"mtk1\"> </span><span class=\"mtk9\">auto</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"18\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">box-shadow</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">0.1rem</span><span class=\"mtk1\"> </span><span class=\"mtk5\">0.1rem</span><span class=\"mtk1\"> </span><span class=\"mtk5\">0.4rem</span><span class=\"mtk1\"> </span><span class=\"mtk5\">0.1rem</span><span class=\"mtk1\"> </span><span class=\"mtk9\">rgba</span><span class=\"mtk1\">(</span><span class=\"mtk5\">0</span><span class=\"mtk1\">, </span><span class=\"mtk5\">0</span><span class=\"mtk1\">, </span><span class=\"mtk5\">0</span><span class=\"mtk1\">, </span><span class=\"mtk5\">0.2</span><span class=\"mtk1\">);</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"19\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">}</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"20\"></span><span class=\"grvsc-source\"></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"21\"></span><span class=\"grvsc-source\"><span class=\"mtk8\">h2</span><span class=\"mtk1\"> {</span></span></span>\n<span class=\"grvsc-line grvsc-line-highlighted\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"22\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">font-size</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> clamp(</span><span class=\"mtk5\">1.4rem</span><span class=\"mtk1\">, </span><span class=\"mtk5\">2.5vw</span><span class=\"mtk1\">, </span><span class=\"mtk5\">6rem</span><span class=\"mtk1\">);</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"23\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">margin-bottom</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">1rem</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"24\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">}</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"25\"></span><span class=\"grvsc-source\"></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"26\"></span><span class=\"grvsc-source\"><span class=\"mtk8\">p</span><span class=\"mtk1\"> {</span></span></span>\n<span class=\"grvsc-line grvsc-line-highlighted\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"27\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">font-size</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> clamp(</span><span class=\"mtk5\">1.2rem</span><span class=\"mtk1\">, </span><span class=\"mtk5\">1.4vw</span><span class=\"mtk1\">, </span><span class=\"mtk5\">2.5rem</span><span class=\"mtk1\">);</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"28\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">margin-bottom</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">1rem</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"29\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">color</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk9\">gray</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"30\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">}</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"31\"></span><span class=\"grvsc-source\"></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"32\"></span><span class=\"grvsc-source\"><span class=\"mtk8\">ul</span><span class=\"mtk1\"> {</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"33\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">list-style-type</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk9\">circle</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"34\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">}</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"35\"></span><span class=\"grvsc-source\"></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"36\"></span><span class=\"grvsc-source\"><span class=\"mtk8\">ul</span><span class=\"mtk1\"> </span><span class=\"mtk8\">li</span><span class=\"mtk1\"> {</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"37\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">padding</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">0.1rem</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"38\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">margin-left</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk5\">3rem</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line grvsc-line-highlighted\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"39\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">font-size</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> clamp(</span><span class=\"mtk5\">1.1rem</span><span class=\"mtk1\">, </span><span class=\"mtk5\">1.2vw</span><span class=\"mtk1\">, </span><span class=\"mtk5\">2rem</span><span class=\"mtk1\">);</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"40\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">  </span><span class=\"mtk8\">font-style</span><span class=\"mtk14\">:</span><span class=\"mtk1\"> </span><span class=\"mtk9\">italic</span><span class=\"mtk1\">;</span></span></span>\n<span class=\"grvsc-line\"><span class=\"grvsc-gutter-pad\"></span><span class=\"grvsc-gutter grvsc-line-number\" aria-hidden=\"true\" data-content=\"41\"></span><span class=\"grvsc-source\"><span class=\"mtk1\">}</span></span></span></code></pre>\n<p>In the code snippet above, we have set the width of the card and font sizes of the heading, paragraph and list items using the <del>clamp()</del> function.</p>\n<blockquote>\n<p><strong>Note</strong>: The value of the viewport width (<del>VW</del>) unit is relative to the viewport width, so 1.5vw, for example, is 1.5% of the width of the viewport.</p>\n</blockquote>\n<p>If we open the card in responsive design mode in a browser, and take a look at the card at different viewport sizes, we will see that the font sizes and the card width dynamically scale with the size of the viewport. And the best part is we haven't used media queries at all.</p>\n<h4 id=\"on-viewport-sized-1330px-x-1024px\" style=\"position:relative;\"><a href=\"#on-viewport-sized-1330px-x-1024px\" aria-label=\"on viewport sized 1330px x 1024px permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>On viewport sized 1330px X 1024px</h4>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 433px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/b208e3df6f8c8aa88bd4bce7d11da273/842a9/typography1.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 94%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAATCAIAAAAf7rriAAAACXBIWXMAAA7DAAAOwwHHb6hkAAACH0lEQVQ4y4WTTXPaMBBA+f9/oe0pvXDpR2iTTsOU5EhxY8KUDtAGSGwsGVmWZMuSZclyB3tCTROSN3vYWelZK1nqcC4YSylLGeNJwjGmlCaUJoSwphLHlBCWJJwQRmKGMWWMU5okCe8opSCAvucDEFLKfH+zRRGO8GYDAICU0jDcIoQZpSEMIYD3dx7aRs1Qh/MsywTnWRP7vJXIJs8y0cR+tCNlLmW+p5U+VB4mNEk7OlVNWZamRtcYY8ojVC12sjFGCGFMaa1tqloX8lEPSinOuVLqQNba5FLMFwvHGV1eDobDIY5p3Y6tDlFKSSn/k3Wh8sHgW79/cXHRH49dbwOqqto38pxcaG20/vrl7N37D+fnZydvT7rd7unH0zevX532eu2vHFm5KHC07X367IxGi8Xv2Xy+XC6vri5Xq3U97SWZkh1ZJtIkoSQmhKQpT9MUIUQIAQAIIbXWT8hK5SGEq9UKQnh/vw6Cje97nuf5/sbzvCAI1nfrLMuelI2UMoQwCADGMYkxITSO4whtGUt8z4sJsTVPt62UKsuSpykIdncaABBFqFlTa20fTuyYXFhrIYTO6PvNZOK67mw2+zX9OR6P/9zeGmNeODBrSwiA67qO40yn0x/X15ObMaEUbZHW+jk5z3NrrRACYxxFESEEIRRhXNRas+GqqvI8F0IcyFVVCSF48/xqhNi9Gikl57u/xVvst/BPbvPoUh7lLy4zOTbKNVPvAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <img\n        class=\"gatsby-resp-image-image\"\n        alt=\"Responsive Typography\"\n        title=\"Responsive Typography\"\n        src=\"/static/b208e3df6f8c8aa88bd4bce7d11da273/842a9/typography1.png\"\n        srcset=\"/static/b208e3df6f8c8aa88bd4bce7d11da273/56d15/typography1.png 200w,\n/static/b208e3df6f8c8aa88bd4bce7d11da273/d9f49/typography1.png 400w,\n/static/b208e3df6f8c8aa88bd4bce7d11da273/842a9/typography1.png 433w\"\n        sizes=\"(max-width: 433px) 100vw, 433px\"\n        style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n        loading=\"lazy\"\n        decoding=\"async\"\n      />\n  </a>\n    </span></p>\n<h4 id=\"on-ipad\" style=\"position:relative;\"><a href=\"#on-ipad\" aria-label=\"on ipad permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>On iPad</h4>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 465px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/0523aa6cd101f70d7531bdd1343d8b90/ad78b/typography2.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 67%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAIAAAAmMtkJAAAACXBIWXMAAA7DAAAOwwHHb6hkAAABbklEQVQoz3WS/46bMAzHef+X2v1R6dbtBe7G6Na7UlLyiyS2SUggE3DtWol+ZCmW7W9sOSmcI+eobSVvtZRGa6u16zqnlFHKGANaW2tRa6uUkbLT2grllHbgqPA+eD9U1Z+yPNR1I6XkXCqlTvWZsYtzoHWHSEqqy6U9fdasYR8Xe2pdHIYCAAEQkRBx9Z/ZUkMAhNdIEcJws5XHSFxi8S4VbtkiL4zjmFKapmkcx3GappynhRi/ZCsppXzHlziEYLqOcy6lbJqGNU19PgvBkWi9N6UUYwSADXGM6Vyfdrvd29v7zx/7l28v+/3+++ur1CYvU+R5mIyI2537vod5Z85YQ0QhBAAwxgghjDEOgIjouZiEFIwxzlvGGsaYtRYAHEAIYe2/3dl7n3MmxLL8VR0Ox+PH77LUXXdf+lTc933OGRGqqvp7PJZlybmIw7As/r94e2He+/kTEFE/cz1n5wYubIjz9WHHR6ZH8iP/APe37O1wfiozAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <img\n        class=\"gatsby-resp-image-image\"\n        alt=\"Responsive Typography\"\n        title=\"Responsive Typography\"\n        src=\"/static/0523aa6cd101f70d7531bdd1343d8b90/ad78b/typography2.png\"\n        srcset=\"/static/0523aa6cd101f70d7531bdd1343d8b90/56d15/typography2.png 200w,\n/static/0523aa6cd101f70d7531bdd1343d8b90/d9f49/typography2.png 400w,\n/static/0523aa6cd101f70d7531bdd1343d8b90/ad78b/typography2.png 465w\"\n        sizes=\"(max-width: 465px) 100vw, 465px\"\n        style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n        loading=\"lazy\"\n        decoding=\"async\"\n      />\n  </a>\n    </span></p>\n<h4 id=\"on-iphone-678\" style=\"position:relative;\"><a href=\"#on-iphone-678\" aria-label=\"on iphone 678 permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>On iPhone 6/7/8</h4>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 465px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/83056d1cd6023826cfd72da3de4f7490/ad78b/typography3.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 77.99999999999999%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAIAAACZeshMAAAACXBIWXMAAA7DAAAOwwHHb6hkAAABZ0lEQVQoz5WS2W7jMAxF8//fFyDdnDaNY2ulVkr0Jg3iQdN0UGDigwtCkO55EndC6K4XnGvOFOcawFvjrfXWBgBrjPc+Whu8x/XGaW1BWwWBq7A7n9vX1+bYfByb08fprBQoqZQCANMzzrkIIWgNIUTQ0HesbS+Xc9sLe7y4Xc50S0oZMa8zIaa/hxhxnQlTTjlfa5nS9TXtEBMRDd+MwzASDbcMa8ZxHH6CuMrLstQ7ppVlWeZ5LqWUZZmmcRzH+04p5Re5lEJEzjnBOQAwxjjjMcaU/q39Lg/D0HVd89a8vx8Ph8Pz05NUmogek2mIMRhrjDFgICLWWhHxIZmIADRjPWN927ZKqW2ytUZIAQBElFLaJk/T7JyTUjrnfAgb5JxzrdUaeH55UUpprdfqFlkKsd/vhZBCXDc0pbxB9s6dPj+llH3Xr5v7wD/XWtMXiBhjDCEgYgihlPJ/uZQyTdP8k3vzJv8BACueLlPIKQQAAAAASUVORK5CYII='); background-size: cover; display: block;\"\n  ></span>\n  <img\n        class=\"gatsby-resp-image-image\"\n        alt=\"Responsive Typography\"\n        title=\"Responsive Typography\"\n        src=\"/static/83056d1cd6023826cfd72da3de4f7490/ad78b/typography3.png\"\n        srcset=\"/static/83056d1cd6023826cfd72da3de4f7490/56d15/typography3.png 200w,\n/static/83056d1cd6023826cfd72da3de4f7490/d9f49/typography3.png 400w,\n/static/83056d1cd6023826cfd72da3de4f7490/ad78b/typography3.png 465w\"\n        sizes=\"(max-width: 465px) 100vw, 465px\"\n        style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n        loading=\"lazy\"\n        decoding=\"async\"\n      />\n  </a>\n    </span></p>\n<style class=\"grvsc-styles\">\n  .grvsc-container {\n    overflow: auto;\n    position: relative;\n    -webkit-overflow-scrolling: touch;\n    padding-top: 1rem;\n    padding-top: var(--grvsc-padding-top, var(--grvsc-padding-v, 1rem));\n    padding-bottom: 1rem;\n    padding-bottom: var(--grvsc-padding-bottom, var(--grvsc-padding-v, 1rem));\n    border-radius: 8px;\n    border-radius: var(--grvsc-border-radius, 8px);\n    font-feature-settings: normal;\n    line-height: 1.4;\n  }\n  \n  .grvsc-code {\n    display: table;\n  }\n  \n  .grvsc-line {\n    display: table-row;\n    box-sizing: border-box;\n    width: 100%;\n    position: relative;\n  }\n  \n  .grvsc-line > * {\n    position: relative;\n  }\n  \n  .grvsc-gutter-pad {\n    display: table-cell;\n    padding-left: 0.75rem;\n    padding-left: calc(var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem)) / 2);\n  }\n  \n  .grvsc-gutter {\n    display: table-cell;\n    -webkit-user-select: none;\n    -moz-user-select: none;\n    user-select: none;\n  }\n  \n  .grvsc-gutter::before {\n    content: attr(data-content);\n  }\n  \n  .grvsc-source {\n    display: table-cell;\n    padding-left: 1.5rem;\n    padding-left: var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem));\n    padding-right: 1.5rem;\n    padding-right: var(--grvsc-padding-right, var(--grvsc-padding-h, 1.5rem));\n  }\n  \n  .grvsc-source:empty::after {\n    content: ' ';\n    -webkit-user-select: none;\n    -moz-user-select: none;\n    user-select: none;\n  }\n  \n  .grvsc-gutter + .grvsc-source {\n    padding-left: 0.75rem;\n    padding-left: calc(var(--grvsc-padding-left, var(--grvsc-padding-h, 1.5rem)) / 2);\n  }\n  \n  /* Line transformer styles */\n  \n  .grvsc-has-line-highlighting > .grvsc-code > .grvsc-line::before {\n    content: ' ';\n    position: absolute;\n    width: 100%;\n  }\n  \n  .grvsc-line-diff-add::before {\n    background-color: var(--grvsc-line-diff-add-background-color, rgba(0, 255, 60, 0.2));\n  }\n  \n  .grvsc-line-diff-del::before {\n    background-color: var(--grvsc-line-diff-del-background-color, rgba(255, 0, 20, 0.2));\n  }\n  \n  .grvsc-line-number {\n    padding: 0 2px;\n    text-align: right;\n    opacity: 0.7;\n  }\n  \n  .synthwave-84 { background-color: #262335; }\n  .synthwave-84 .mtk8 { color: #72F1B8; }\n  .synthwave-84 .mtk1 { color: #FFFFFF; }\n  .synthwave-84 .mtk3 { color: #FF7EDB; }\n  .synthwave-84 .mtk10 { color: #FEDE5D; }\n  .synthwave-84 .mtk16 { color: #FF8B39; }\n  .synthwave-84 .mtk6 { color: #36F9F6; }\n  .synthwave-84 .mtk12 { color: #FFFFFFEE; }\n  .synthwave-84 .mtk14 { color: #B6B1B1; }\n  .synthwave-84 .mtk5 { color: #F97E72; }\n  .synthwave-84 .mtk9 { color: #FE4450; }\n  .synthwave-84 .grvsc-line-highlighted::before {\n    background-color: var(--grvsc-line-highlighted-background-color, rgba(255, 255, 255, 0.1));\n    box-shadow: inset var(--grvsc-line-highlighted-border-width, 4px) 0 0 0 var(--grvsc-line-highlighted-border-color, rgba(255, 255, 255, 0.5));\n  }\n</style>","frontmatter":{"title":"Responsive Typography With CSS Clamp() Function","date":"2021-06-18"}}},"pageContext":{"slug":"/responsive-typography-with-css-clamp-function/","prev":{"fields":{"slug":"/learn-typescript-types/"},"frontmatter":{"modules":null}},"next":{"fields":{"slug":"/understanding-classes-in-javascript/"},"frontmatter":{"modules":null}}}},
    "staticQueryHashes": ["3159585216"]}