2014-02-12 15 views
9

Problem:contenteditable = false in contenteditable = true

Ich habe ein unerwünschtes Verhalten in Chrome und Opera beobachtet, der auftritt, wenn man zwei p Tags schließt sich durch die Trennung zwischen ihnen zu löschen. Chrome und Opera löschen contenteditable = false Element (Widget) und Text nach.

Beispiel:

example on jsfiddle

html:

<div contenteditable="true" class="editor"> 
<p>This is the first paragraph.</p> 
<p>&larr;Place your cursor here and press backspace. <span class="widget" contenteditable="false">widget</span> Text after widget</p> 
</div> 

css:

.widget{ 
    display: inline-block; 
    padding: 5px; 
    background-color: gray; 
} 

.editor{ 
    font: 20px Trebuchet MS 
} 

Frage:

Warum? Wie repariere es?

+0

Sie meinen Opera mit Blink-Engine? Ich kann in Opera 12 nicht mithalten. – Bergi

+0

Ja. Oper 19,0 – user1103291

Antwort

2

Ich berichten diesen Fehler schon vor langer Zeit für Blink und Webkit. Es ist kritisch und es gibt keine Problemumgehung. Das Webkit-Team hat versucht, es zu beheben, aber soweit ich sehen kann, haben sie einen neuen Bug eingeführt: |.

PS. Ja, diese Antwort schlägt keine Lösung, aber die einzige fix ist zwingende und Backspace Tasten Verhalten löschen.