JSFiddle - React, Tailwind, and code Playground

Automatic CSS based placeholder on empty divs with placeholder attribute to define text.

by nilloc

HTML

<div class="input" contenteditable><div class="placeholder" contenteditable="false" data-placeholder="Placeholder"></div></div>

CSS

.input{
  display:inline-block;
  border:1px solid lightgray;
  border-radius:2px;
  padding:2px;
}

.placeholder:only-child::before{
  content:attr(data-placeholder);
  color:lightgray;
}