Skip to content

Instantly share code, notes, and snippets.

@AakashRao-dev
Created January 7, 2023 15:28
Show Gist options
  • Save AakashRao-dev/3ba874ff3cfd7e16004fd6104758bb24 to your computer and use it in GitHub Desktop.
Save AakashRao-dev/3ba874ff3cfd7e16004fd6104758bb24 to your computer and use it in GitHub Desktop.
Margin Collapsing in CSS
<div class="container">
<h1>Margin collapsing in CSS</h1>
<!-- Normal container -->
<div class="sub-container">
<div class="box-normal">
<h2>Normal Container</h2>
<p class="first-para">Lorem ipsum dolor sit amet consectetur adipisicing elit. Eaque illo quod praesentium porro hic voluptatibus ex consequatur. Nam, quisquam excepturi.</p>
<p class="second-para">Lorem ipsum dolor sit amet consectetur adipisicing elit. Eaque illo quod praesentium porro hic voluptatibus ex consequatur. Nam, quisquam excepturi.</p>
</div>
<!-- Flexbox container -->
<div class="box-flex">
<h2>Flexbox Container</h2>
<p class="first-para">Lorem ipsum dolor sit amet consectetur adipisicing elit. Eaque illo quod praesentium porro hic voluptatibus ex consequatur. Nam, quisquam excepturi.</p>
<p class="second-para">Lorem ipsum dolor sit amet consectetur adipisicing elit. Eaque illo quod praesentium porro hic voluptatibus ex consequatur. Nam, quisquam excepturi.</p>
</div>
<!-- Grid container -->
<div class="box-grid">
<h2>Grid Container</h2>
<p class="first-para">Lorem ipsum dolor sit amet consectetur adipisicing elit. Eaque illo quod praesentium porro hic voluptatibus ex consequatur. Nam, quisquam excepturi.</p>
<p class="second-para">Lorem ipsum dolor sit amet consectetur adipisicing elit. Eaque illo quod praesentium porro hic voluptatibus ex consequatur. Nam, quisquam excepturi.</p>
</div>
</div>
</div>
@import url("https://fonts.googleapis.com/css2?family=Rowdies:wght@300;400&display=swap");
:root {
--spacing: 2rem;
}
.box-normal {
/* NOTHING TO PUT HERE AS
THIS IS A NORMAL CONTAINER */
}
.box-flex {
display: flex;
flex-direction: column;
}
.box-grid {
display: grid;
}
/* FIRST BIGGER MARGIN */
.first-para {
margin-bottom: var(--spacing);
}
/* SECOND SMALLER MARGIN */
.second-para {
margin-top: calc(var(--spacing));
}
/*======================*/
/*=====OTHER STYLES=====*/
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html,
body {
height: 100%;
}
body {
font-family: "Rowdies", cursive;
line-height: 1.4;
}
p {
font-weight: 300;
font-family: sans-serif;
}
.container {
height: 100%;
border: 16px ridge #ff6550;
background: #ffe7e7;
overflow: auto;
padding: var(--spacing);
}
.sub-container {
max-width: 1200px;
height: 80%;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
place-items: center;
gap: var(--spacing);
margin: calc(var(--spacing) * 1.5) auto;
}
.sub-container > div {
background: #ea5b4853;
border-radius: 10px;
}
h1,
h2 {
text-align: center;
}
h2 {
margin-bottom: 1rem;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment