Antwort
Das Tabellenlayout lässt sich mithilfe von <table>, <tr> und <td> im HTML simpel lösen. Der JavaScript-Code fügt lediglich neue Zeilen und Spalten ein. contentEditable ermöglicht das Bearbeiten des Zelleninhaltes, wodurch auch Breiten und Höhen automatisch angepasst werden.
Hier eine Lösung ohne Frameworks (Vanilla JavaScript): https://pastebin.com/fsv59ZQH