Animuj zmianę szerokości słów

Mam zdanie, w którym zanikam jednym słowem i zastępuję je innym z tablicy. Jednakże, ponieważ wszystkie słowa różnią się długością, szerokość zdania gwałtownie się zmienia i powoduje niepewne przejście.
Jak mogę animować zmianę szerokości? Próbowałem dodać przejście do kontenera zdania w css, ale to nie zadziałało. Zastosowałem przejście jako1.5s all linear, więc powinien animować szerokość, jak również wszystko inne, gdy tylko nastąpi zmiana. Jakieś pomysły?

$(function() {
  var hello = ['dynamic', 'a', 'aklsjdlfajklsdlkf', 'asdf'];
  var used = ['dynamic'];
  var greeting = $('#what');
  var item;

  function hey() {

    item = hello[Math.floor(Math.random() * hello.length)];
    if (hello.length != used.length) {
      while (jQuery.inArray(item, used) != -1) {
        item = hello[Math.floor(Math.random() * hello.length)];
      }
      used.push(item);
    } else {
      used.length = 0;
      item = hello[Math.floor(Math.random() * hello.length)];
      used.push(item);
    }
    greeting.html(item);
    greeting.animate({
      "opacity": "1"
    }, 1500);
  }

  window.setInterval(function() {
    greeting.animate({
      "opacity": "0"
    }, 1500);
    setTimeout(hey, 1500)
  }, 5000);

});
#sentence {
  transition: 1.5s all linear;
}

#what {
  font-style: italic;
  text-decoration: underline;
  color: red;
}
<p id="sentence">
  This is a sentence that has <span id="what">dynamic</span> text that alters width.
</p>

<script src="//ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>

EDYCJA: Przepraszam, gdybym był niejasny, chcę tylko wygasić słowo, a nie całe zdanie. Próbuję animować szerokość, aby pasowała do nowego słowa. Nie chcę zmieniać / dodawać żadnych elementów, wystarczy rozwiązać z bieżącymi tagami na miejscu.

questionAnswers(4)

yourAnswerToTheQuestion