<main>
<section>
<h1>Heading 1</h1>
<h2>Heading 2</h2>
<h3>Heading 3</h3>
<h4>Heading 4</h4>
<h5>Heading 5</h5>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
<p class="small">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
</section>
</main>
:root {
--font-size: 1rem; // Base font size
--ratio: 1.333; // Ratio for font scale
// Loop to create CSS font size variables
// based on Perfect Fourth scale
@for $i from 1 through 9 {
@if $i == 1 {
--fs--#{$i}00: var(--font-size);
} @else {
--fs--#{$i}00: calc(var(--fs--#{$previous--fs}00) * var(--ratio));
}
$previous--fs: $i;
}
}
// Styles
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap");
body {
min-height: 100vh;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
font-family: "Open Sans", Arial, Helvetica, sans-serif;
background-color: #0ac2a1;
font-size: var(--fs--200);
color: #FFFFFF;
}
main {
width: clamp(200px, 50%, 500px);
padding: 1em 2em;
color: #ffffff;
background-color: #0d352e;
border-radius: 5px;
box-shadow: 0 4px 8px 3px rgba(0,0,0,0.3);
}
h1, h2, h3, h4, h5 {
margin: 0 0 1rem;
}
h1 {
font-size: var(--fs--600);
}
h2 {
font-size: var(--fs--500);
}
h3 {
font-size: var(--fs--400);
}
h4 {
font-size: var(--fs--300);
}
h5 {
font-size: var(--fs--200);
}
p {
margin: 0 0 1rem;
&.small {
font-size: var(--fs--100);
}
}
View Compiled
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.