2016-04-28 5 views
0

У меня есть класс span в моем проекте, который должен иметь только свойства его родителя. Поэтому я установил все: unset. Но этот элемент также должен быть доступен для редактирования. И похоже, что все: unset также удаляет возможность редактировать содержимое элемента.все: unset удаляет contenteditable

CSS:

.mytext{ 
 
    all:unset; 
 
}
<h1><span class="mytext" contenteditable="true">Editable Text</span></h1>

Так есть ли способ использовать все: отключенное и contenteditable = "истина"?

EDIT: И да, я должен использовать его таким образом. Я не могу добавить атрибут contenteditable для родителя. Причина в том, что содержимое h1 (в данном случае) будет добавляться динамически. Элемент span будет содержать некоторые дополнительные атрибуты данных, которые мне нужны. Я не могу добавить эти атрибуты в родительский элемент, потому что я не знаю, какой элемент будет родителем.

+0

Ok Я нашел обходной путь для знаю, но я все же хотел бы знать, если есть более простой способ. На данный момент я беру атрибуты данных из элемента span с помощью jquery и добавляю его к родительскому элементу, затем я беру содержимое из элемента span и заменяю его родительским контентом. – Verdemis

ответ

1

Как насчет :not() селектор?

.mytext:not([contenteditable="true"]) { 
 
    all: unset; 
 
}
<h1><span class="mytext" contenteditable="true">Editable Text</span></h1>

+0

Awesome. Я должен был это знать сам, но мне это не приходило в голову. Спасибо! – Verdemis

+0

Хорошо, похоже, я скоро побывал. Это применило бы все: unset только к элементам, которые не имеют контент-атрибута ... но мне нужно все: unset свойство относится и к тем. Но у меня есть обходной путь с jquery ... это сделало бы это на данный момент. Но, возможно, для этого все еще есть более простой способ. – Verdemis

+0

Как насчет этого - http://codepen.io/Paulie-D/pen/MyPJdy –

Смежные вопросы