diff --git a/projects/common/element-components/spell-correct.component.ts b/projects/common/element-components/spell-correct.component.ts
new file mode 100644
index 0000000000000000000000000000000000000000..8f5e2fe98e533567f0432efd441257da3a91f8b0
--- /dev/null
+++ b/projects/common/element-components/spell-correct.component.ts
@@ -0,0 +1,62 @@
+import { Component, ViewChild } from '@angular/core';
+import { MatInput } from '@angular/material/input';
+import { FormElementComponent } from '../form-element-component.directive';
+import { SpellCorrectElement } from '../models/spell-correct-element';
+
+@Component({
+  selector: 'app-spell-correct',
+  template: `
+    <div fxFlex
+         fxLayout="column"
+         [style.width.%]="100"
+         appInputBackgroundColor [backgroundColor]="elementModel.backgroundColor"
+         [style.height.%]="100">
+      <mat-form-field class="small-input">
+        <input matInput type="text"
+               [style.text-align]="'center'"
+               autocomplete="off"
+               [formControl]="elementFormControl">
+      </mat-form-field>
+      <button mat-button
+              [style.color]="elementModel.fontColor"
+              [style.font-family]="elementModel.font"
+              [style.font-size.px]="elementModel.fontSize"
+              [style.font-weight]="elementModel.bold ? 'bold' : ''"
+              [style.font-style]="elementModel.italic ? 'italic' : ''"
+              [style.width.%]="100"
+              [style.margin-top]="'-20px'"
+              [style.text-decoration-line]="strikethrough() ? 'line-through' : ''"
+              (click)="onClick($event)">
+        &nbsp;{{elementModel.label}}&nbsp;
+      </button>
+    </div>
+  `,
+  styles: [
+    '::ng-deep app-spell-correct .small-input div.mat-form-field-infix {border-top: none; padding: 0.75em 0 0.25em 0;}'
+  ]
+})
+export class SpellCorrectComponent extends FormElementComponent {
+  elementModel!: SpellCorrectElement;
+  @ViewChild(MatInput) inputElement!: MatInput;
+
+  strikethrough(): boolean {
+    if (this.inputElement) {
+      const value = this.inputElement.value;
+      if (value === null) return false;
+      if (value === undefined) return false;
+      return value.length > 0;
+    }
+    return false;
+  }
+
+  onClick(event: MouseEvent) : void {
+    if (this.strikethrough()) {
+      this.elementFormControl.setValue('');
+    } else {
+      this.elementFormControl.setValue(this.elementModel.label);
+      this.inputElement.focus();
+    }
+    event.preventDefault();
+    event.stopPropagation();
+  }
+}
diff --git a/projects/common/models/spell-correct-element.ts b/projects/common/models/spell-correct-element.ts
new file mode 100644
index 0000000000000000000000000000000000000000..a2861e6560f69c18734d08855757cbf08ef90c79
--- /dev/null
+++ b/projects/common/models/spell-correct-element.ts
@@ -0,0 +1,23 @@
+import {FontElement, SurfaceUIElement} from '../interfaces/UIElementInterfaces';
+import { InputElement, UIElement} from './uI-element';
+import {initFontElement, initSurfaceElement} from '../util/unit-interface-initializer';
+
+export class SpellCorrectElement extends InputElement implements FontElement, SurfaceUIElement {
+  bold: boolean = false;
+  font: string = 'Roboto';
+  fontColor: string = 'black';
+  fontSize: number = 18;
+  italic: boolean = false;
+  lineHeight: number = 120;
+  underline: boolean = false;
+  backgroundColor: string = '#AAA0';
+
+  constructor(serializedElement: UIElement) {
+    super(serializedElement);
+    Object.assign(this, serializedElement);
+    Object.assign(this, initFontElement(serializedElement));
+    Object.assign(this, initSurfaceElement(serializedElement));
+
+    this.backgroundColor = serializedElement.backgroundColor as string || '#d3d3d300';
+  }
+}
diff --git a/projects/common/shared.module.ts b/projects/common/shared.module.ts
index 30ea70b12b0e6c38491300876d25a95caf3a584e..f88e3e34e34b3b43638bb7bfef43bfd1078a7071 100644
--- a/projects/common/shared.module.ts
+++ b/projects/common/shared.module.ts
@@ -45,7 +45,7 @@ import { LikertRadioButtonGroupComponent }
 import { Magnifier } from './element-components/magnifier.component';
 import { RadioGroupImagesComponent } from './element-components/compound-elements/radio-group-images.component';
 import { DropListComponent } from './element-components/compound-elements/drop-list.component';
-import { SpellCorrectComponent } from "./element-components/spell-correct.component";
+import { SpellCorrectComponent } from './element-components/spell-correct.component';
 
 @NgModule({
   imports: [
diff --git a/projects/editor/src/app/unit-view/page-view/properties-panel/element-properties.component.html b/projects/editor/src/app/unit-view/page-view/properties-panel/element-properties.component.html
index acbff5282b0883607820698dfbe8a2d15995fdfe..806121ec4384af379bf79ef82207c9d36d7656a6 100644
--- a/projects/editor/src/app/unit-view/page-view/properties-panel/element-properties.component.html
+++ b/projects/editor/src/app/unit-view/page-view/properties-panel/element-properties.component.html
@@ -18,12 +18,6 @@
                  (input)="updateModel('label', $any($event.target).value)">
         </mat-form-field>
 
-        <mat-form-field *ngIf="combinedProperties.buttonLabel !== undefined" appearance="fill">
-          <mat-label>{{'propertiesPanel.spellCorrectButtonLabel' | translate }}</mat-label>
-          <input matInput type="text" [value]="combinedProperties.buttonLabel"
-                 (input)="updateModel('buttonLabel', $any($event.target).value)">
-        </mat-form-field>
-
         <ng-container *ngIf="combinedProperties.text">
           {{'propertiesPanel.text' | translate }}
           <div class="text-text" [innerHTML]="$any(combinedProperties.text) | safeResourceHTML"
diff --git a/projects/editor/src/assets/i18n/de.json b/projects/editor/src/assets/i18n/de.json
index cba61038b7ad62c2fa779e2b96f80d0ada862344..5bcb43bbee1b96f935fce6c030a7588c9bf93409 100644
--- a/projects/editor/src/assets/i18n/de.json
+++ b/projects/editor/src/assets/i18n/de.json
@@ -115,8 +115,7 @@
     "onlyOneItem": "Nur ein erlaubtes Element",
     "duplicateElement": "Element duplizieren",
     "deleteElement": "Element löschen",
-    "noElementSelected": "Kein Element ausgewählt",
-    "spellCorrectButtonLabel": "Wort zum Korrigieren"
+    "noElementSelected": "Kein Element ausgewählt"
   },
   "player": {
     "autoStart": "Autostart",