Я должен выбрать все элементы html (из *), кроме дочерних, одного конкретного div.как я могу использовать его: не из css3?
(*) - children of (#myDiv)
Вы не можете сделать это, поскольку селектор для поиска любого потомка #myDiv будет
#myDiv
#myDiv > *
Но это не простой селектор , который может поместиться в :not().
:not()
Лучше всего применять стили к * и переопределять (или «возвращать») их в #myDiv > *:
*
* { color: red; } #myDiv > * { color: black; }
jsFiddle preview
Это должно работать:
:root, :not(#myDiv) > *
Первая часть будет соответствовать корневому элементу.Вторая часть будет соответствовать чему-либо с родителем, если этот родитель не является #myDiv.