CSS
CREATED
2019 Dec 7th
UPDATED
2021 Jan 4th
Center anything, horizontally and vertically, with 3 lines of CSS:
.center {
display: flex;
align-items: center;
justify-content: center;
} Via Marko ⚡ Denic
Vertically center with margin
You can use margin: auto on both display: flex and display: grid.
It will work on the child of grid or flexbox but not on a block
level element.
<div class="margins">
<p>Pls center me!</p>
</div> .margins {
/* display: flex; */
display: grid;
}
.margins p {
margin: auto;
} Vertically center with absolute positioning
<div class="absolute">
<p>Pls center me!</p>
</div> .absolute {
position: relative;
}
.absolute p {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 100%;
} Vertically center with flexbox
<div class="flexbox">
<p>Pls center me!</p>
</div> .flexbox {
display: flex;
align-items: center;
justify-content: center;
} Vertically center with grid
Use either align-items: center; or place-items: center;
<div class="grid">
<p>Pls center me!</p>
</div> .grid {
display: grid;
/* align-items: center; */
place-items: center;
} Breaking Long Words and URLs
There are times when a really long string of text can overflow the container of a layout, use this:
.don_break_out_of_parent {
/* These are technically the same, but use both */
overflow-wrap: break-word;
word-wrap: break-word;
}>>> END OF CHEAT SHEET <<<