Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: OpenID Connect / OAuth client 3.0.0-alpha9 New alpha version released for module openid_connect (3.0.0-alpha9). Release: Opensolr Search 4.5.0 Minor update available for module opensolr_search (4.5.0). Release: Timelinr 1.0.1 Minor update available for module timelinr (1.0.1). Usage Milestone: Simplify Module simplify crossed 10,000 active installs. Usage Milestone: Views Reference Filter Module entityreference_filter crossed 10,000 active installs. Usage Milestone: Dropdown Language Module dropdown_language crossed 10,000 active installs. Usage Milestone: Paragraphs Browser Module paragraphs_browser crossed 10,000 active installs. Usage Milestone: OpenAPI Module openapi crossed 10,000 active installs. Usage Milestone: Decoupled Router Module decoupled_router crossed 10,000 active installs. Module Revived: Entityqueue Buttons 1.1.2 Module entityqueue_buttons updated after 8 months of inactivity (1.1.2).

CKEditor 5 Label Fix

3 sites Security covered Drupal 10–11
View on drupal.org

This module restores proper HTML label markup support in CKEditor 5, which is particularly helpful for sites upgrading from CKEditor 4. It ensures that elements like labels associated with inputs are not broken by the editor, preserving semantic structure and accessibility compliance.

CKEditor5 Label Fix

Following lessons learned developing CKEditor5 Table Fix.

A lightweight plugin that restores HTML label markup support (like for example:

CKEditor 4 accepted this:

<ul>
  <li class="checkbox" id="chbx-p2">
    <input class="action-checkbox-2 cb-dmm" id="eg5-2" type="checkbox">
    <label for="eg5-2">You hold a federal wine licence issued by the Canada Revenue Agency (CRA) under <a href="https://laws-lois.justice.gc.ca/eng/acts/e-14.1/page-2.html#h-179017">section&nbsp;14 of the <cite>Excise Act, 2001</cite></a>, valid at the time you apply to the program and up to or after March&nbsp;31,&nbsp;2026
    </label>
  </li>
</ul>

CKEditor 5 without the ckeditor5_label_fix plugin turns the above into this (SURPRISE!):

<ul>
  <li class="checkbox" id="chbx-p2">
    <input class="action-checkbox-2 cb-dmm" id="eg5-2" type="checkbox"> 
    <label for="eg5-2">You hold a federal wine licence issued by the Canada Revenue Agency (CRA) under </label>
<a href="https://laws-lois.justice.gc.ca/eng/acts/e-14.1/page-2.html#h-179017"><label for="eg5-2">section&nbsp;14 of the&nbsp;</label></a>
<cite><a href="https://laws-lois.justice.gc.ca/eng/acts/e-14.1/page-2.html#h-179017"><label for="eg5-2">Excise Act, 2001</label></a></cite>
<label for="eg5-2">, valid at the time you apply to the program and up to or after March&nbsp;31,&nbsp;2026</label>
  </li>
</ul>

Features

ckeditor5_label_fix is especially useful after upgrading from CKEditor4.

  • With the ckeditor5_label_fix plugin the markup now renders as follows:
<ul>
    <li class="checkbox" id="chbx-p2">
        <input class="action-checkbox-2 cb-dmm" id="eg5-2" type="checkbox">&nbsp;<label for="eg5-2">You hold a federal wine licence issued by the Canada Revenue Agency (CRA) under <a href="https://laws-lois.justice.gc.ca/eng/acts/e-14.1/page-2.html#h-179017">section&nbsp;14 of the&nbsp;</a><cite><a href="https://laws-lois.justice.gc.ca/eng/acts/e-14.1/page-2.html#h-179017">Excise Act, 2001</a></cite>, valid at the time you apply to the program and up to or after March&nbsp;31,&nbsp;2026&nbsp;</label>
    </li>
</ul>
  • Provides a faux CKEditor button for easy enablement
  • Works with Drupal 10/11 and any text format using CKEditor5
  • Designed for upgraded sites coming from CKEditor4 that need legacy label markup preserved

Use cases:

  • Government and enterprise sites with legacy or semantic label markup
  • WCAG-compliant label elements
  • Any site where CKEditor 5 strips valid label structure and formatting

Post-Installation

  1. Enable the CKEditor5 Label Fix plugin on the same text format. Look for the “Label Fix Dummy” button and add it to the toolbar.
  2. Save your text format — the plugin is now active.

No visible button will appear in the CKEditor UI, but the plugin will be loaded silently in the background to preserve your full label markup.

Additional Requirements

None. This module only requires Drupal core CKEditor 5 support and does not depend on contrib modules.

Depends on

Dependencies of the latest stable release

  • ckeditor5 Drupal core

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
4
Tracked since
Jun 2025
Latest release
2 months ago
Releases (12 mo)
2
Maintenance
Active

Release Timeline

Releases

Version Type Core Release date
1.0.1 Stable 10–11 Jun 15, 2026
1.0.0 Stable 10–11 Jun 10, 2026
1.0.0-beta1 Pre-release 10–11 Jun 30, 2025
1.0.x-dev Dev 10–11 Jun 6, 2025