Use place-items: center to center an element within its parent.
First specify grid as the display method, and then write place-items: center on the same element. place-items is a shorthand to set both align-items and justify-items at once. By setting it to center, both align-items and justify-items are set to center.
.parent {
display: grid;
place-items: center;
}
This enables the content to be perfectly centered within the parent, regardless of intrinsic size.
HTML
<div class="parent">
<div class="box" contenteditable="">
:)
</div>
</div>CSS
.parent {
display: grid;
place-items: center;
/* Just for parent demo size */
height: 100vh;
}