diff --git a/projects/player/src/app/services/marking.service.ts b/projects/player/src/app/services/marking.service.ts
index c50fcfa464c24680e72112246a2d9831e37cd8ab..14b5ddf4a2c08437f4a7667d5daad01427af2853 100644
--- a/projects/player/src/app/services/marking.service.ts
+++ b/projects/player/src/app/services/marking.service.ts
@@ -11,8 +11,7 @@ export class MarkingService {
       if (clear) {
         this.clearMarkingFromNode(range);
       } else {
-        const markedElement: HTMLElement = this.createMarkedElement(color);
-        range.surroundContents(markedElement);
+        this.markNode(range, color);
       }
     } else {
       const nodes: Node[] = [];
@@ -99,6 +98,13 @@ export class MarkingService {
     return { text, previousText, nextText };
   };
 
+  private markNode(range: Range, color: string): void {
+    if (range.startContainer.parentElement?.tagName.toUpperCase() !== MarkingService.MARKING_TAG) {
+      const markedElement: HTMLElement = this.createMarkedElement(color);
+      range.surroundContents(markedElement);
+    }
+  }
+
   private markNodes(nodes: Node[], range: Range, color: string): void {
     nodes.forEach((node, index) => {
       const nodeValues = this.getNodeValues(node, nodes, index, range);