Перейти к содержимому


Фотография

Внешний вид форума


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 28

#21 hasherfrog

hasherfrog

    Штатный параноик

  • Пользователи
  • PipPipPip
  • 2 184 сообщений

Отправлено 21 Июнь 2006 - 13:43

Для тех, кто знает что такое букмарклеты и умеет ими пользоваться.
Вот тут я положил букмарклет, позволяющий раскрашивать форум различными способами :] Пока в арсенале:
Red
Brown
Gray
Glamour
Alien
Glow

Morte, попробуйте Gray-вариант. Под оперой должно сработать. А по поводу "чтобы не нажимать каждый раз кнопочку"... Опера поддерживает скрипты от Greasemonkey, ага :]


#22 Morte

Morte

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 601 сообщений

Отправлено 21 Июнь 2006 - 14:24

Все такие крутые, блин, что аж слов нету. Не поленитесь, плиз, объясните ламеру (мне, хотя таких как я - миллионы) - что мне делать с "букмарклетом" и/или css.


#23 hasherfrog

hasherfrog

    Штатный параноик

  • Пользователи
  • PipPipPip
  • 2 184 сообщений

Отправлено 21 Июнь 2006 - 16:17

Morte, под Оперой 8 вроде не работает, затык вышел, адаптировать пока нет возможности (и желания, я не люблю Оперу). Про букмарклеты почитайте в википедии.


#24 Morte

Morte

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 601 сообщений

Отправлено 21 Июнь 2006 - 18:50

А под 9ю Оперу?

PS для тех, кто тоже не знает, что такое Букмарклеты ))

Это сообщение отредактировано Morte - 21 июня 2006 | 20:01


#25 NoNick

NoNick

    Весельчак Ни

  • Пользователи
  • PipPipPip
  • 788 сообщений

Отправлено 21 Июнь 2006 - 19:47

Morte, для включения постороней css'ы(чё такое css читай в Википедии :) в Опере надо сделать следющее - View > Style > Manage modes > Тут указываешь адрес к скачаенной css и в Default Mode ставишь "User Mode" > Обратно в Style переключаешся на User Mode.

Поидее должно работать, хотя имхо лучше пользоватся hasherfrog'cким букмарклетом.


#26 Morte

Morte

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 601 сообщений

Отправлено 21 Июнь 2006 - 20:40

hasherfrog дал мне файл .js, а в настройках просят именно css. Попытка скормить ему js ни к чему не привела.


#27 hasherfrog

hasherfrog

    Штатный параноик

  • Пользователи
  • PipPipPip
  • 2 184 сообщений

Отправлено 21 Июнь 2006 - 20:48

Morte
Подмена CSS и мой букмарклет - гранаты разной системы. Гранаты, но разной системы. Мою (JS) надо в закладку класть. А CSS - подставлять в "Manage modes". Вы не дочитали про букмарклеты в википедии?


#28 Mello

Mello

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 606 сообщений

Отправлено 25 Июнь 2006 - 22:21

Хех... Меня эта проблема никогда не волновала, ведь для того что бы белое стало черным, а черное белым достаточно наклонить экран... (:
А вообще напомнила мне эта тема другую схожую тему... про гламурное оформление сайта...
Странно, как только я открыл эту тему, и прочитал первый пост, буковки начали плясать перед глазами... открыл друггую тему - и все нормально.. вот она сила убеждения.. (:


#29 hasherfrog

hasherfrog

    Штатный параноик

  • Пользователи
  • PipPipPip
  • 2 184 сообщений

Отправлено 05 Июль 2006 - 15:40

Выше я привёл букмарклет, который позволяет «раскрашивать» форум, основываясь на уже имеющемся стиле. Сам стиль хранится в http://fforum.koch.ru/forumcss.css

Люди, которые попробовали уже использовать «раскрашиватель», наверняка встретились с двумя досадными мелочами:
1. необходимо всё время нажимать кнопочку букмарклета;
2. пересчёт занимает время, в течении которого Firefox «подвисает».
Естественно, чем не пожертвуешь ради такой развлекухи. Но я вот чего-то подумал-подумал, и решил кое-что усовершенствовать.

Предположим, Вам понравился какой-то стиль. Или Вы хотите что-то подрихтовать в получающейся цветовой гамме. Естественным тогда будет не «перевычисление» цветов каждый раз, а применение уже готового стиля. То есть, мы должны «подставить» вместо оригинального файла – свой.

Как всегда, существует несколько способов решения. Я сейчас приведу тот, который:
1. не наносит вреда безопасности Firefox;
2. не требует установки дополнительных расширений;
3. позволяет встраивать его в Firefox с минимальными затратами времени;
4. не использует ничего «недокументированного».

Речь пойдёт об использовании файла userContent.css, который специально [ха-ха] предназначен для решения подобных задач. Всё «новьё» и «know-how», которое я предложу – небольшая автоматизация процесса.


*Минимум теории*

Каждый элемент HTML-документа может иметь определённые свойства, в том числе и цвет. Элементы – это абзацы, ссылки, заголовки, разметка и тому подобное. Описывать в HTLM-файле свойства каждого элемента – смерти подобно. Поэтому делают по-другому: описывают некие общие правила, например «весь текст – зелёный; все ссылки - красные». Такие вот правила и хранятся в том CSS-файле, который мы хотим «подменить». На самом деле всё гораздо сложнее, просто я утрирую для простоты.

Принцип действия userContent.css (тоже очень коротенько) следующий: когда браузер открывает любой документ, он применяет кучу правил (CSS по ссылкам из заголовка HTML, CSS из секции <styles>, CSS из тегов, есть ещё всякие-разные «классы» :] и тому подобное). Если браузер видит, что пользователь создал userContent.css, то применяются правила и из него, до кучи :]

Здесь есть маленький ньюанс. Поскольку наши правила из userContent.css применяется «поверх» такого многообразия, мы должны явным образом указать некоторое «преимущество» наших описаний перед оригинальными. Для этого мы будем использовать «! important» (т.е. «важно!») после переопределения нужных нам свойств HTML-элементов. А особо важными для нас является «цветовые» свойства.

Браузер Firefox поддерживает работу с правилами стилей через язык программирования javascript. То есть, написав мини-программку (букмарклет) мы можем «опросить» текущий открытый документ относительно всех правил, применённых к его содержимому. Что мы делаем дальше? Выписываем результаты этого «опроса» в отдельный файл (наш userContent.css), добавляем где нужно указания «! important», а потом... Потом мы можем сколько угодно забавлятся с цветами, редактируя их вручную.

*Практика*

A. Итак, для начала создадим файл userContent.css, потому что по умолчанию его не существует. Открываем блокнотом пример userContent-example.css (этот файл расположен в Вашем профиле, где-то по адресу C:\Documents and Settings\пользователь\Application Data\Mozilla\Firefox\Profiles\буковкицифирки.default\chrome), стираем всё его содержимое (Ctrl+A, Del) и сохраняем в ту же папку под именем userContent.css (не спешите закрывать notepad, пусть висит).

B. Если Вы сейчас читаете данный пост не из-под Firefox, то запустите её и откройте данный пост :]. Выделите мышкой весь текст из абзаца ниже, затем перетащите выделение на панель закладок (обычный приём создания букмарклета, подробно пишу только для не знающих этого).

CODE
javascript:(function(){var i,x,o,r,nw;nw=window.open('','css','');nw.document.open();nw.document.writeln('@-moz-document url-prefix("http://fforum.koch.ru/") {<br>');for(i=0;x=document.styleSheets[i];++i){try{r=x.cssRules;}catch(e){alert('Oops. Access denied.');}for(i=0;i<r.length;i++){o=r[i].cssText;if(o.indexOf('rgb')==-1)continue;nw.document.writeln(o.replace(/\);/g,') !important;')+'<br>');}}nw.document.writeln('}<br>');nw.document.close();})()


Букмарклет выше предназначен для вывода в отдельное окно всех правил таблицы стилей, которые влияют на цветовую гамму. Дополнительно, он вставляет несколько нужных мелочей вроде упомянутого «! important» и определения «области действия» переопределённого стиля (Вы же не хотите, чтобы весь Internet стал Fallout’ом? :]).

C. Теперь запустите букмарклет (кликните по получившейся на панели закладке); откроется окошко, в которое будут выведен текст правил. Этот текст - уже готовый документ, он содержит готовую таблицу стилей. Весь текст (Ctrl+A, Ctrl+C) нужно скопировать в userContent.css, открытый сейчас в notepad, т.е. (Ctrl+P) и сохранить (Ctrl+S).

D. Всё. Теперь перезапускаем Firefox и заново открываем форум – его отображение теперь определяется нашими правилами, а не тем, что сделал Voron.

Минуточку!
Но ведь ничего не изменилось?!?
Конечно! Мы же не поменяли цвета :]
Это Вы должны сделать вручную.

Все цвета записаны в формате rgb(r,g,B). Буковка r – это составляющая красного цвета (red), g – зелёного (green), b – синего (blue). Составляющие изменяются в диапазоне 0-255, создавая всевозможные цвета. Комбинация «(0,0,0)» - чёрный цвет, «(255,255,255)» - белый, «(255,0,0)» - чисто красный, «(213, 189, 139)» - наш «золотой». Опять же, объясняю только для тех, кто не знал.

Может показаться, что цветов для изменения - очень много. Тогда, для начала, сохраните тот стиль, который получается после применения вышеописанного "разукрашивателя".

И помните: после каждого изменения userContent.css Вы должны закрывать-отрывать браузер, иначе не увидите изменений.


Небольшое замечание

Существуют несколько способов изменения стилей прямо во время просмотра документа. Это могут быть специальные расширения, букмарклеты и тому подобное. Для нас главное другое – мы можем теперь получать стили документа и сохранять их в файл.

Если кто-то заинтересуется, я продолжу и опишу «процесс редактирования стилей на ходу». Пока же мне не ясно, сколько пользователей Mozilla Firefox вообще у нас тут, сколько захотят попробовать перекрасить форум, и сколько из них осилят данную технологию).

Что интересно

Интересно было бы создать «стиль», который бы красиво отображал наиболее используемые пользователями сайты, типа mail.ru или там google :]

Трудности

Наиболее неприятная – CSS не действует на классы :]


Удачи :]




Похожие темы Свернуть

  Название темы Форум Автор Статистика Последнее сообщение


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Рейтинг@Mail.ru