Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Контрастная надпись
 
 автор: Shorr Kan   (13.10.2005 в 22:28)   письмо автору
 
 

Как можно делать контрастную надпись? Если пользователь сделает черный фон - надпись должна стать светлой. Если белый - стать темной. Ну и соответственно с синим, красным, зеленым, и т.д. фоном.
Такая возможность явно есть - многие бесплатные хостинги ее используют для установки текстовой рекламы на сайты пользователей.

   
 
 автор: Dimon.st   (13.10.2005 в 23:13)   письмо автору
 
   для: Shorr Kan   (13.10.2005 в 22:28)
 

Я пологаю, если без перебора и хитрых скриптов подсчета состовляющих rgb, то:

<table><tr><td STYLE="color:red; filter:invert">qqqq</td></tr></table>

в color задаешь свой цвет фона...

   
 
 автор: 12345   (14.10.2005 в 00:26)   письмо автору
 
   для: Dimon.st   (13.10.2005 в 23:13)
 

Хе, думал, не сделать ли так, но цвет #888888 инвертируется в себя же и ничего не видно. И, я полагаю, в коде была некоторая опечатка, имелось в виду: (?)

<table border=1 STYLE="background-color:red"><tr><td STYLE="color:red; filter:invert">qqqq</td></tr></table>


Что может быть лучше тупого парсинга?...
<style>td{width:150;height:85}</style>
<body onLoad=inv()>
<table border=1 id=t2 style="background-color:rgb(160,160,128);"><tr><td id=td2><center>abcdef</td></tr></table> 
<script> d=document;
function inv(){
    s=d.all.t2.style.backgroundColor.substring(4);
    r=s.substring(0,s.indexOf(','));    s=s.substring(s.indexOf(',')+1);
    g=s.substring(0,s.indexOf(','));    s=s.substring(s.indexOf(',')+1);
    b=parseInt(s);
    d.all.td2.style.color="rgb("+(r>140?0:255)+","+(g>140?0:255)+","+(b>140?0:255)+")";
}

А наличие текстовой рекламы, кстати, не аргумент, потому что если они текст не пустят на фоне своей подложки, его можно сделать нечитаемым, сделав фон рисунком.

   
 
 автор: Shorr Kan   (14.10.2005 в 01:18)   письмо автору
 
   для: 12345   (14.10.2005 в 00:26)
 

Вообще-то, мне нужно только ссылку. Без фона. И не затрагивая тег body.

   
 
 автор: 12345   (14.10.2005 в 02:48)   письмо автору
 
   для: Shorr Kan   (14.10.2005 в 01:18)
 

в body - только иллюстрация вызова. Она вызывается после смены фона пользователем. Фон я использую, окрашивая требуемый текст (ссылка или другое). Вот вид стиля цвета фона имеет значение. Если меняют в document.bgColor, то его надо анализировать.

   
 
 автор: Dimon.st   (14.10.2005 в 12:16)   письмо автору
 
   для: 12345   (14.10.2005 в 00:26)
 

Ну, при сером это да, согласен, можно еще дописать пару условий... Насчет опечатки - я полагаю требовался метод, а не код, фон же подставить не так сложно...
Насчет парсинга)... Это конечно хорошо, но, к сожалению 140,0,0 - красивый бардовый инвентировался в белый а не в голубовато-зеленый...

   
 
 автор: Shorr Kan   (14.10.2005 в 12:45)   письмо автору
 
   для: Dimon.st   (14.10.2005 в 12:16)
 

Фон... На него не согласны. Я должен сделать ссылки, которые будут видны на любом цвете и они не должны быть навязчивыми. Но фон у ссылок не должен быть. Я думал о радужной раскраске, но как-то она несерьезно смотрится.

   
 
 автор: 12345   (14.10.2005 в 19:19)   письмо автору
 
   для: Shorr Kan   (14.10.2005 в 12:45)
 

Shorr Kan: я не ставлю фон, а иллюстрирую, что какой бы ни был фон, его понадобится попарсить и сделать контрастный. Парсить придётся, конечно, 16-ричные представления. Но откуда брать источник фона - программа решить не сможет, это программист должен писать.

Dimon.st : моя логика парсинга - тоже иллюстрация : )

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования