О сайтостроении, музыке и путешествиях

Управление цветами при помощи CSS

Внимание: идея изложенная в этом поста — плод фантазии автора.

У меня возникло желание иметь среди CSS свойств такое, которое бы позволяло управлять цветами следующим образом: я, например, хочу инвертировать цвет текста или фона, или поменять их местами.

Это могло бы выглядеть так:

div {  color:#FFF;  color-process:inverse(color);  }

Что означало бы инвертирование всех цветов объявленых в других CSS свойствах, которые применяются к данному элементу. В данном случае текста у этого элемента должен стать черным (#000) вместо объявленого белого (#FFF).

Или:

div {  color:#FFF;  background-color:#000;  color-process:change(color, background-color);  }

Что давало бы команду поменять местами значения цвета текста и цвета фона.

Подобные возможности очень пригодились бы при отображении выделенных участков текста. К примеру, результаты поиска, выделенный участок в цитате. В HTML5 есть элемент <mark>, который вполне мог бы по умолчанию стилизоваться при помощи такого свойства.

Особенность идеи в том, что не нужно явно указывать цвет. Иногда бывают случаи, когда цветовые схемы на одном и том же сайте настолько разнообразны, что предусмотреть все варианты не возможно.

Название color-process взято для примера. Такого свойства нет. Не пытайтесь это повторить в домашних условиях. Что-то подобное уже придумано или быть может даже реализовано?

Обсуждение

  1. :
    www-style ждёт твоих предложений :)
  2. :
    Хм, как раз думаю, как реализовать зависимость большинства цветов в ЦСС от одного основного. Хотя «фигле думать, прыгать надо» — яваскриптом или ПХП это несложно реализуемо. Или суть поста в желании сделать это только ЦСС-ом? )
  3. :
    pepelsbey, интересно они меня сразу «развернут» с такой мелочью или просто затянут обсуждение? :)
  4. :
    Keymasterr, JavaScript может помочь прочитать значения color и background-color, например. Потом можно заменить значения, но это не является встроенным механизмом каскадных таблиц стилей. А я говорю, что хорошо бы иметь CSS свойство и стилизовать что-то без указания конкретного цвета, но в уже существующей гамме.