It is surprisingly hard to visually horizontally center an emoji in Google Chrome, as there appears to be whitespace to the right of the emoji where there shouldn't be. An example:
.avatar {
width: 30px;
padding: 10px;
background-color: #eee;
border-radius: 50%;
display: grid;
justify-items: center;
align-items: center;
}
<div class="avatar">
<div>🐶</div>
</div>
https://codepen.io/tommedema/pen/xxbXBRe
In Chrome 79.0.3945.79 on MacOS Catalina 10.15.2 this renders as:
Clearly it's not visually horizontally centered. Yet in other browsers like Safari and Firefox 71 it is:
Regarding Carol's answer of using font-size and box-sizing, the result is still the same. I've selected the emoji/text so you can more clearly see the issue of there being whitespace to the right of the emoji, but only on Chrome and not on other browsers: