\u003ckbd\u003e:blue_square: qualquer texto\u003c/kbd\u003e
Não há espaço visível entre o emoji e o texto, embora o espaço esteja presente no código HTML.
Isso é uma limitação da tag \u003ckbd\u003e? Existe uma maneira elegante de corrigir isso ou devemos confiar em coisas “hacky” como \u0026nbsp; ou ㅤ, etc.?
Uma solução é adicionar alguns valores para a propriedade white-space, como pre-wrap, mas isso causará problemas se tivermos mais de uma quebra de linha dentro de <kbd>.
Se tornaria:
Uma alternativa seria adicionar automaticamente margens esquerda e/ou direita ao emoji se ele não for o primeiro ou o último elemento.
Essas margens forçadas seriam aceitáveis? Fica mais bonito e aumenta a legibilidade, mas será impossível para o usuário não ter uma margem entre o emoji e algum texto (quanto a mim, ficaria feliz, pois vejo a margem forçada como um benefício).
Acho que podemos usar a propriedade gap para isso? O problema é que mudar kbd para usar flexbox removeu qualquer espaço natural entre os elementos internos:
kbd {
gap: 0.5em;
}
produz:
Isso adicionaria espaço entre quaisquer elementos HTML dentro da tag KBD e não exigiria exceções para first/last-child.