JSFiddle - React, Tailwind, and code Playground
HTML
<input>
CSS
input {
font-size: 20px;
background-color: transparent;
border: none;
outline: none;
border-bottom: 2px solid;
width: 200px;
min-width: 200px;
}
JavaScript
$("body").keydown(function(e){
setTimeout(function(){
if(e.which == 32){
$("#clone").append(" ");
}
$("#clone").text($('input').val());
$('input').width($("#clone").width() + 40);
}, 100);
});