JSFiddle - React, Tailwind, and code Playground
HTML
<div class="comment" contenteditable>hello world<br>foo bar</div>
<div class="comment" contenteditable>Hakuna Matata!</div>
CSS
.comment {
border: dashed 3px gray;
margin: 1em;
padding: 0.5em;
}
JavaScript
document.querySelectorAll('.comment').forEach(comment => {
comment.addEventListener('keydown', myBrHandler)
})
function myBrHandler(e) {
if(e.ctrlKey && e.keyCode == 13){
let brNode = document.createElement('br'),
last = false;
let range = window.getSelection().getRangeAt(0);
if (!range.endContainer.nextElementSibling) {
last = true;
}
range.deleteContents();
range.insertNode(brNode);
if (last) {
let brNode = document.createElement('br')
range.insertNode(brNode);
}
range.collapse();
}
}