Kodza

Inline Edit

Text that becomes its own field when clicked: the caret lands under the pointer, Enter saves with a check, Escape rolls the old text back in. A real input or textarea underneath, with a kodza:save event.

Forms No dependencies inlineediteditablerenameformkeyboard Added Nov 2026
/anim/inline-edit/ GitHub Fullscreen

With your AI

Just ask.

Say it to your AI. It gets the exact code below, not its best guess, and knows where it goes.

Add the Kodza Inline Edit to my page.

Not plugged in yet?
claude mcp add -t http kodza https://kodza.dev/api/mcp
Also in Codex, Cursor and VS Code.
kodza-inline-edit.html
<div class="kodza-inline-edit kodza-inline-edit--title">
  <input class="kodza-inline-edit__native" type="text" name="project" value="Shoreline redesign" aria-label="Project name" required maxlength="60" autocomplete="off">
</div>

<div class="kodza-inline-edit">
  <span class="kodza-inline-edit__label">Brief</span>
  <textarea class="kodza-inline-edit__native" name="brief" rows="1" placeholder="Add a brief. One line beats a meeting.">Ship the landing page by Friday. Nothing else moves until it's live.</textarea>
</div>

<div class="kodza-inline-edit">
  <span class="kodza-inline-edit__label">Address</span>
  <span class="kodza-inline-edit__prefix">kodza.dev/</span>
  <input class="kodza-inline-edit__native" type="text" name="handle" value="le-havre-studio" required pattern="[a-z0-9\-]+" spellcheck="false" autocomplete="off" data-error="Lowercase letters, digits and dashes only.">
  <p class="kodza-inline-edit__note">
    <span class="kodza-inline-edit__hint">Old links keep working.</span>
    <span class="kodza-inline-edit__error" aria-live="polite"></span>
  </p>
</div>

Checked

Checked before you paste.

Robots poked at it before you did. Every component goes through the same checks, and again each time it changes.

What ranLast run
Accessibilityaxe-core 4.10.2: the WCAG 2.1 A and AA rules, plus best practices. 0 issues
KeyboardThe Tab key gets there, and the focus ring shows when it does. Passed
Reduced motionTurn on reduced motion and what moved just appears. Nothing loops. Passed
Light and darkThe same checks on both themes, contrast included. Passed
WordPressPasted into Twenty Twenty-Five, Twenty Twenty-One, Astra, Blocksy, GeneratePress, Hello Elementor, Kadence and OceanWP. Nothing to flag. 8 / 8 themes
Robots checked this. A human with VoiceOver hasn't yet.
KeyboardPress them in the preview
On the text
  • Turns it into a field, all the text selectedEnter/Space
While editing
  • Saves, focus back on the textEnter
  • New line, in a multi-line field⇧Enter
  • Cancels, the old text rolls back inEsc
  • Saves and moves onTab

More like this

More in Forms