https://w3c.github.io/edit-context/#edit-context-differences
Each child node of the EditContext editing host becomes editable, unless that node has a contenteditable attribute set to "false".
I guess that if the element whose contenteditable is "false" has an EditContext, it should be editable because if only the element has focus, it should be editable.
So in my understanding an element can be editable if:
designMode is set to on
contenteditable is set to true
- an
EditContext is associated
- an ancestor is editable and not in
designMode and not associated with an EditContext and contenteditable is set to "false"
I.e., an element in an editing host can be non-editable if and only if:
- not in
designMode
- not associated with an
EditContext
contenteditable is set to "false"
- or a descendant of the non-editable element and is not an editing host
Cc: @dandclark