Skip to content

Instantly share code, notes, and snippets.

@hobo71
Created August 26, 2020 16:04
Show Gist options
  • Save hobo71/bbadc19185491fa3b7f2771e324ab3af to your computer and use it in GitHub Desktop.
Save hobo71/bbadc19185491fa3b7f2771e324ab3af to your computer and use it in GitHub Desktop.
Easiest Flex Grid Ever

Easiest Flex Grid Ever

A responsive grid based on flexbox. Requires only two classes to function, and is infinitely expandable! I also added a semantic version.

A Pen by Tania Rascia on CodePen.

License.

<h1>Easiest Flex Grid Ever</h1>
<div class="row">
<div class="column">
100%
</div>
</div>
<div class="row">
<div class="column">
50%
</div>
<div class="column">
50%
</div>
</div>
<div class="row">
<div class="column">
33.3%
</div>
<div class="column">
33.3%
</div>
<div class="column">
33.3%
</div>
</div>
<div class="row">
<div class="column">
25%
</div>
<div class="column">
25%
</div>
<div class="column">
25%
</div>
<div class="column">
25%
</div>
</div>
<div class="row">
<div class="column">
20%
</div>
<div class="column">
20%
</div>
<div class="column">
20%
</div>
<div class="column">
20%
</div>
<div class="column">
20%
</div>
</div>
<div class="row">
<div class="column">
16.6%
</div>
<div class="column">
16.6%
</div>
<div class="column">
16.6%
</div>
<div class="column">
16.6%
</div>
<div class="column">
16.6%
</div>
<div class="column">
16.6%
</div>
</div>
<div class="row">
<div class="column">
14.2%
</div>
<div class="column">
14.2%
</div>
<div class="column">
14.2%
</div>
<div class="column">
14.2%
</div>
<div class="column">
14.2%
</div>
<div class="column">
14.2%
</div>
<div class="column">
14.2%
</div>
</div>
<div class="row">
<div class="column">
12.5%
</div>
<div class="column">
12.5%
</div>
<div class="column">
12.5%
</div>
<div class="column">
12.5%
</div>
<div class="column">
12.5%
</div>
<div class="column">
12.5%
</div>
<div class="column">
12.5%
</div>
<div class="column">
12.5%
</div>
</div>
<div class="row">
<div class="column">
11.1%
</div>
<div class="column">
11.1%
</div>
<div class="column">
11.1%
</div>
<div class="column">
11.1%
</div>
<div class="column">
11.1%
</div>
<div class="column">
11.1%
</div>
<div class="column">
11.1%
</div>
<div class="column">
11.1%
</div>
<div class="column">
11.1%
</div>
</div>
<div class="row">
<div class="column">
10%
</div>
<div class="column">
10%
</div>
<div class="column">
10%
</div>
<div class="column">
10%
</div>
<div class="column">
10%
</div>
<div class="column">
10%
</div>
<div class="column">
10%
</div>
<div class="column">
10%
</div>
<div class="column">
10%
</div>
<div class="column">
10%
</div>
</div>
<div class="row">
<div class="column _25">
Twenty-five Percent
</div>
<div class="column _75">
Seventy-five Percent
</div>
</div>
<div class="row">
<div class="column">
<div class="row">
<div class="column">
Nested
</div>
<div class="column">
Nested
</div>
</div>
</div>
<div class="column">
Nothing Nested
</div>
</div>
<h2>Contained Grid</h2>
<main>
<div class="row">
<div class="column _25">
Twenty-five Percent
</div>
<div class="column _5">
Fifty Percent
</div>
<div class="column _25">
Twenty-five Percent
</div>
</div>
</main>
/**
* Easiest Flex Grid Ever
* Responsive!
*/
/* Grid */
.column {
flex-basis: 100%;
}
@media screen and (min-width: 800px) {
.row {
display: flex;
flex-direction: row;
flex-wrap: nowrap;
}
.column {
flex: 1;
}
._25 {
flex: 2.5;
}
._5 {
flex: 5;
}
}
/* Style */
body {
font-family: 'Lato', sans-serif;
font-size: 1.3em;
color: #ccc;
background: #000;
margin-bottom: 70px;
}
.column {
padding: 15px;
border: 1px solid #666;
margin: 5px 0;
background: #343436;
}
main {
max-width: 1200px;
margin: 0 auto;
}
h1,
h2 {
text-align: center;
}
<link href="https://fonts.googleapis.com/css?family=Lato:400,700,900" rel="stylesheet" />
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment