diff --git a/projects/common/element-components/button.component.ts b/projects/common/element-components/button.component.ts
index 30db5ad0bddf66034ba5d0a835ea855f3d323faa..a34676a407d710ee2d45260e6cf6c985ec4e68b1 100644
--- a/projects/common/element-components/button.component.ts
+++ b/projects/common/element-components/button.component.ts
@@ -10,6 +10,7 @@ import { ButtonElement } from '../models/button-element';
          [style.height.%]="100">
       <button *ngIf="!elementModel.imageSrc" mat-button
               (focusin)="onFocusin.emit()"
+              (click)="onClick($event)"
               [style.width.%]="100"
               [style.height.%]="100"
               [style.background-color]="elementModel.backgroundColor"
@@ -23,6 +24,8 @@ import { ButtonElement } from '../models/button-element';
         {{elementModel.label}}
       </button>
       <input *ngIf="elementModel.imageSrc" type="image"
+             (focusin)="onFocusin.emit()"
+             (click)="onClick($event)"
              [src]="elementModel.imageSrc | safeResourceUrl"
              [class]="elementModel.dynamicPositioning? 'dynamic-image' : 'static-image'"
              [alt]="'imageNotFound' | translate">
@@ -36,4 +39,9 @@ import { ButtonElement } from '../models/button-element';
 export class ButtonComponent extends ElementComponent {
   @Output() onFocusin = new EventEmitter();
   elementModel!: ButtonElement;
+
+  onClick = (event: MouseEvent): void => {
+    event.stopPropagation();
+    event.preventDefault();
+  };
 }
diff --git a/projects/common/element-components/text-field.component.ts b/projects/common/element-components/text-field.component.ts
index 01926d3086c61ebef6627eebfff940eb9dddc538..5fb74926035687f9ffe340f0a4f35c296eceaff5 100644
--- a/projects/common/element-components/text-field.component.ts
+++ b/projects/common/element-components/text-field.component.ts
@@ -24,7 +24,7 @@ import { TextFieldElement } from '../models/text-field-element';
              [formControl]="elementFormControl"
              placeholder="{{elementModel.label}}">
       <button *ngIf="elementModel.clearable" matSuffix mat-icon-button aria-label="Clear"
-              (click)="elementFormControl.setValue('')">
+              (click)="onClick($event)">
         <mat-icon>close</mat-icon>
       </button>
       <mat-error *ngIf="elementFormControl.errors">
@@ -39,6 +39,12 @@ export class TextFieldComponent extends FormElementComponent {
   @Output() onBlur = new EventEmitter<HTMLElement>();
   elementModel!: TextFieldElement;
 
+  onClick(event: MouseEvent) : void {
+    this.elementFormControl.setValue('');
+    event.preventDefault();
+    event.stopPropagation();
+  }
+
   get validators(): ValidatorFn[] {
     const validators: ValidatorFn[] = [];
     if (this.elementModel.required) {
diff --git a/projects/common/element-components/text.component.ts b/projects/common/element-components/text.component.ts
index e1f4b1d9ae9daac1484832aacac1dc69baeda998..5e2ca18e53d77ee851d0660da2381efbc122be97 100644
--- a/projects/common/element-components/text.component.ts
+++ b/projects/common/element-components/text.component.ts
@@ -13,19 +13,19 @@ import { TextElement } from '../models/text-element';
       <div *ngIf="elementModel.highlightable"
            class="marking-bar">
         <button class="marking-button" mat-mini-fab [style.background-color]="'yellow'"
-                (click)="applySelection.emit({color:'yellow', element: container, clear: false})">
+                (click)="onClick($event, {color:'yellow', element: container, clear: false})">
           <mat-icon>border_color</mat-icon>
         </button>
         <button class="marking-button" mat-mini-fab [style.background-color]="'turquoise'"
-                (click)="applySelection.emit({color: 'turquoise', element: container, clear: false})">
+                (click)="onClick($event, {color: 'turquoise', element: container, clear: false})">
           <mat-icon>border_color</mat-icon>
         </button>
         <button class="marking-button" mat-mini-fab [style.background-color]="'orange'"
-                (click)="applySelection.emit({color: 'orange', element: container, clear: false})">
+                (click)="onClick($event, {color: 'orange', element: container, clear: false})">
           <mat-icon>border_color</mat-icon>
         </button>
         <button class="marking-button" [style.background-color]="'lightgrey'" mat-mini-fab
-                (click)="applySelection.emit({color: 'none', element: container, clear: true})">
+                (click)="onClick($event, {color: 'none', element: container, clear: true})">
           <mat-icon>clear</mat-icon>
         </button>
       </div>
@@ -53,4 +53,10 @@ export class TextComponent extends ElementComponent {
   constructor(public sanitizer: DomSanitizer) {
     super();
   }
+
+  onClick(event: MouseEvent, markingValues: { color: string; element: HTMLElement; clear: boolean }) : void {
+    this.applySelection.emit(markingValues);
+    event.preventDefault();
+    event.stopPropagation();
+  }
 }