Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Znalazłem częściowy sposób na zmianę koloru tła stron internetowych w Operze - nie wiem czemu jednak nie działa na niektórych stronach.
1. Ustawić żądany kolor w: Narzędzia/Preferencje/Strony WWW/Kolor tła
2. Ten sam kolor ustawić w skrypcie CSS: Narzędzia/Preferencje/Zaawansowane/Zawartość/Opcje stylów/
a) Wyświetlanie: Zaznaczyć wszystko oprócz - Stosuj style do pasków przewijania
b) Tryby wyświetlania strony:
Tryb autorski - zaznaczyć wszystko oprócz "Czcionki i kolory strony
Tryb użytkownika - zaznaczyć wszystko oprócz "Czcionki i kolory strony"
Domyślny tryb wyświetlania: Tryb użytkownika
Mój arkusz stylów: wskazać ścieżkę do pliku: /usr/share/opera/styles/user.css
3. W pliku /usr/share/opera/styles/user.css wkleić zawartość:
body, .body_wrapper {background-color: #DCDCDC !important;}
oczywiście zamiast #DCDCDC może być dowolny inny kolor
4. Zrestartować Operę
Google wygląda zgodnie z zamierzeniem:
[url=http://imageshack.us/photo/my-images/715/zrzutekranu14.jpg/][img]http://img715.imageshack.us/img715/705/zrzutekranu14.jpg[/img][/url]
ale już np. Wikipedia i Wordpress nie (tzn. wciąż ma białe tło):
[url=http://imageshack.us/photo/my-images/809/zrzutekranu15.jpg/][img]http://img809.imageshack.us/img809/8154/zrzutekranu15.jpg[/img][/url]
Ostatnio edytowany przez davidoski (2012-04-09 07:36:23)
Offline
A co powyższy post ma wspólnego z tematem wątku?
Offline
Kiedy się rozmawia, zwykle bywa tak, że temat ulega zmianie. Czy uszczęśliwiłoby cię gdybym dodał do tematu "oraz zmiana koloru stron internetowych w Operze"? Zaznaczam, że dalsze zaczepki będę ignorował.
Wracając do tematu:
W końcu doszedłem jak na twardo zmienić kolor każdej strony w Operze:
1. Narzędzia/Preferencje/Zaawansowane/Zawartość: zaznaczyć "Włącz obsługę Java Script"
2. Wybrać "Opcje Java Script": zaznaczyć wszystko od góry do dołu i podać ścieżkę do folderu na dysku (obojętnie jakiego, można utworzyć nowy do tego celu) w którym będzie skrypt.
3. Wrzucić do tego folderu plik tekstowy o rozszerzeniu .js z następującą zawarością:
[url=http://speedy.sh/Sjwsb/test.js]http://speedy.sh/Sjwsb/test.js[/url]
Ustawienia w skrypcie można zmieniać, zaznaczyłem poniżej dodatkowe opisy, dotyczące tego, która wartość co dokładnie zmienia:
var css = "html *, html {\n background:#DCDCDC[KOLOR TŁA STRONY] !important; \n color:#000000[KOLOR CZCIONKI] !important;\n font-size: 15px !important;\n font-family: verdana !important;\n}\n\na {\n color:#cda869[KOLOR ODNOŚNIKA] !important;\n}\n\na:hover {\n color:#cf6a4c [KOLOR ODNOŚNIKA PO NAJECHANIU MYSZKĄ] !important;\n}\na:visited {\n color:#9b703f[ODWIEDZONY ODNOŚNIK] !important;\n}\n\n\ninput, select, textarea, button {\n -moz-appearance: none !important;\n border: 1px solid #8f9d6a [KOLOR RAMKI PRZYCISKU I POLA FORMULARZA] !important;\n background-color: #202020 [KOLOR TŁA PRZYCISKU I POLA FORMULARZA !important;\n color: #F8F8F8 [KOLOR PRZYCISKU] !important;\n}\n\ncode, pre, input, samp, kbd, var, dfn { \n -moz-appearance: none !important;\n color: lightgrey [KOLOR TEKSTU W POLU TEKSTOWYM] !important; \n background-color: #111 [KOLOR TŁA POLA TEKSTOWEGO] !important;\n}";
Jest tam też wartość, dzięki której można zmienić czcionkę:
font-family: verdana !important;
Zamiast "verdana" można wstawić inną czcionkę, która jest zainstalowana w systemie.
[url=http://imageshack.us/photo/my-images/208/zrzutekranu16.jpg/][img]http://img208.imageshack.us/img208/3979/zrzutekranu16.jpg[/img][/url]
Ponieważ, takie twarde ustawienie powoduje, że każda strona się zmienia według tego wzoru wygodnie jest dodać sobie na dolny pasek przeglądarki dodatkowy przycisk, dzięki któremu jednym kliknięciem można włączać i wyłączać skrypt:
1. Narzędzia/Wygląd/Przyciski/Preferencje - przeciągnąć "Włącz obsługę JavaScript" na dolny pasek menu, potwierdzić OK i gotowe.
[url=http://imageshack.us/photo/my-images/805/zrzutekranu17.jpg/][img]http://img805.imageshack.us/img805/2023/zrzutekranu17.jpg[/img][/url]
Jedyny minus jaki zauważyłem to niektóre strony wymagają do prawidłowego działania włączonych JavaScript, wtedy ich włączenie spowoduje też automatycznie zmianę wyglądu, ale w takim przypadku można po prostu tymczasowo usunąć plik ze skryptem z folderu i włączyć skrypty bez zmiany wyglądu.
Całą masę innych skryptów można znaleźć na http://userstyles.org
Ostatnio edytowany przez davidoski (2012-04-09 09:54:22)
Offline
[b]davidoski[/b] zamiast bardzo inwazyjnego i dość kłopotliwego UserJS lepiej wykorzystać wbudowany w Operę mechanizm stylów użytkownika:
1. Wejdź do katalogu ~/.opera/styles/user
2. Stwórz plik o dowolnej nazwie zakończonej [tt].css[/tt]
3. Wklej do niego zawartość:
@charset "utf-8"; /* Name: MS Comic Sans */ body, html { background-color: #DCDCDC !important; font-family: 'Comic Sans MS' !important; color: red !important; }
(W komentarzu musi być umieszczona nazwa, którą wyświetli Opera. Oczywiście powyższy styl jest raczej humorystyczny).
4. W Operze zrób: Opera → Wygląd → karta Przyciski → sekcja Widok strony → Przycisk „Tryb autorski” przeciągnij z okienka gdzieś na któryś z pasków Opery (gdzie Ci wygodnie — ja dodałem sobie przycisk „Widok”, który wyświetla nowy pasek, na którym umieściłem co bardziej przydatne, ale rzadko używane przyciski). Oczywiście potem kliknij „OK”.
5. Zrestartuj Operę
6. Przycisk, który dodałeś, ma z boku małą strzałkę. Po jej kliknięciu pojawia się lista stylów z katalogu z punktu 1. Każdy z nich możesz zaznaczyć i odznaczyć wedle woli, wpływając na wygląd otwartych stron.
Niestety wszelkie zmiany wprowadzone w plikach CSS są widoczne dopiero przy ponownym uruchomieniu Opery.
Inny sposób to wykorzystywanie arkuszy stylów przypisanych do stron.
Gdzieś na stronie kliknij prawy przycisk myszy → Preferencje dla witryny → karta Wyświetlanie → na dole możesz wybrać arkusz stylu dla tej konkretnej strony (chodzi raczej o domenę). Ten sposób ma tę zaletę, że wprowadzone zmiany są widoczne już po odświeżeniu strony (w najgorszym wypadku wystarczy wybrać inny arkusz stylu, zatwierdzić zmianę i znów wybrać początkowy).
Więcej informacji o arkuszach użytkownika w Operze można przeczytać [url=http://www.opera.com/docs/usercss/]tutaj[/url] i [url=http://operawiki.info/OperaUserCSS]tutaj[/url].
Offline
[quote=Minio]4. W Operze zrób: Opera → Wygląd → karta Przyciski → sekcja Widok strony → Przycisk „Tryb autorski” przeciągnij z okienka gdzieś na któryś z pasków Opery[/quote]
Nie mam takiego przycisku, źle patrzę czy chodziło Ci o "Tryb użytkownika"?
[url=http://imageshack.us/photo/my-images/96/zrzutekranu18f.jpg/][img]http://img96.imageshack.us/img96/1627/zrzutekranu18f.jpg[/img][/url]
Możesz powiedzieć jak masz ustawione te dwa okna?:
[img]http://img716.imageshack.us/img716/6934/zrzutekranu20.jpg[/img]
[img]http://img716.imageshack.us/img716/4296/zrzutekranu19.jpg[/img]
Opera ma jeszcze jakiś drugi katalog ze stylami CSS (/usr/share/opera/styles/user.css) i w tym właśnie wcześniej ustawiałem styl. Mam ustawić w tym okienku ścieżkę na ten folder, który Ty podałeś? Bo póki co to ten nowy styl, który zrobiłem wg Twojego przepisu pojawił mi się prawidłowo pod przyciskiem Tryb użytkownika, pomimo, że ściezka jest podana do innego folderu (tego pierwotnego) i nie wiem co z tym wcześniejszym plikiem user.css - nie będą się gryzły?
EDIT: Ustawiłem tak - ścieżka do "Moich stylów CSS" wskazuje na folder /home/davidoski/.opera/styles/user/.
Do katalogu tego wrzuciłem podany przez Ciebie skrypt. Dodałem przycisk "Tryb użytkownika" - Twój styl się tam pojawił. Kiedy go wybiorę na ustawiony kolor zmienia się tylko niewielka część strony: reszta zostaje jak w Trybie Autorskim (ustawiłem żółty kolor, żeby było widać gdzie się zmienia).
[url=http://imageshack.us/photo/my-images/832/zrzutekranu21.jpg/][img]http://img832.imageshack.us/img832/1036/zrzutekranu21.jpg[/img][/url]
Wygląda więc, na to, że styl działa tylko trzeba by go inaczej zdefiniować, żeby zmieniał całą stronę, a nie tylko fragment. Jeśli w ustawieniach Trybu użytkownika odznaczę Tryb autorski cała strona dostaje zadane tło, ale jej struktura całkiem się rozjeżdża, więc nie może to być odznaczone. Czy ten kod ze skryptu Java można wkleić do stylu CSS?
Ostatnio edytowany przez davidoski (2012-04-09 16:49:57)
Offline
[quote=davidoski]Nie mam takiego przycisku, źle patrzę czy chodziło Ci o "Tryb użytkownika"?[/quote]
Na czystej Operze (nigdy wcześniej nie uruchamianej), na której sprawdzałem, to się nazywa „tryb autorski”. Najwyraźniej Ty w międzyczasie zmieniłeś to ustawienie Opery.
Niemniej tak, chodzi o ten przycisk. Po jego kliknięciu przełączasz się między trybem użytkownika a trybem autorskim.
Jeżeli chodzi o to okno:
W karcie „Wyświetlanie” (drugi screen u Ciebie) mam zaznaczone pierwsze trzy (czyli nie mam czwartego, „stosuj style do elementów formularzy”).
W karcie „Tryby wyświetlania strony” w trybie autorskim mam zaznaczone 1, 2, 3 i 5 zaś w trybie użytkownika — 2, 3 i 5 (chodzi o numery opcji od góry — nie chce mi się nazw przepisywać). Jako domyślny mam tryb autorski.
[quote=davidoski]Opera ma jeszcze jakiś drugi katalog ze stylami CSS (/usr/share/opera/styles/user.css) i w tym właśnie wcześniej ustawiałem styl. Mam ustawić w tym okienku ścieżkę na ten folder, który Ty podałeś? Bo póki co to ten nowy styl, który zrobiłem wg Twojego przepisu pojawił mi się prawidłowo pod przyciskiem Tryb użytkownika, pomimo, że ściezka jest podana do innego folderu (tego pierwotnego) i nie wiem co z tym wcześniejszym plikiem user.css - nie będą się gryzły?[/quote]
Musisz tam podać ścieżkę do [b]pliku[/b] a nie katalogu.
/usr/share/opera/styles/ to globalny katalog ze stylami stron. ~/.opera/styles/user to katalog lokalny. Zasada jest taka sama jak we wszystkich innych aplikacjach — ustawienia lokalne nadpisują ustawienia globalne albo plik globalny jest czytany tylko wtedy, gdy nie jest dostępny plik lokalny (nigdy mi się nie chciało wnikać jak jest w tym konkretnym przypadku).
O ile dobrze pamiętam, plik, do którego ścieżkę podasz (u Ciebie /usr/.../user.css) jest wczytywany na [b]każdej[/b] stronie. A przynajmniej u mnie tak jest, ale może to zależy od ustawień okna (opisanych wyżej).
[quote=davidoski]EDIT: Ustawiłem tak - ścieżka do "Moich stylów CSS" wskazuje na folder /home/davidoski/.opera/styles/user/.
Do katalogu tego wrzuciłem podany przez Ciebie skrypt. Dodałem przycisk "Tryb użytkownika" - Twój styl się tam pojawił. Kiedy go wybiorę na ustawiony kolor zmienia się tylko niewielka część strony: reszta zostaje jak w Trybie Autorskim (ustawiłem żółty kolor, żeby było widać gdzie się zmienia).[/quote]
Ponieważ mój przykładowy styl dotyczy tylko elementów html i body. Są to elementy dostępne na każdej stronie w sieci.
Możesz do tego zestawu dodać div, header czy jakiekolwiek inne elementy grupujące (w [url=http://www.w3.org/TR/html5/]specyfikacji[/url] rozdziały „Sections” i „Grouping content”), ale to może nie być najlepszy pomysł. Dlatego polecałbym raczej tworzyć specyficzne arkusze stylów dla poszczególnych stron.
[quote=davidoski]Czy ten kod ze skryptu Java można wkleić do stylu CSS?[/quote]
Kod JavaScript. On nie ma z Javą nic wspólnego, może poza podobną nazwą.
Nie, nie można go wkleić. Możesz zdefiniować katalog skryptów użytkownika i tam go wrzucić, ale to zupełnie inna para kaloszy (wyszukiwarka zwróci co trzeba na hasło „User JavaScript Opera”).
Offline
Dzięki za odpowiedź. Trochę to zagmatwane. Czy znasz prosty skrypt CSS, który zmieniałby tło całej strony, bez względu na zawartość? Ustawianie osobnych skryptów dla różnych stron to trochę za dużo zabawy, szczególnie że nie zadziała na nowych stronach. Zasadniczo chodzi mi o możliwość zmiany białego tła na szare, ale nie znam na to skryptu CSS, tylko ten z Javy, ale on trochę koliduje, bo wymusza się na stronach, które go wymagają do działania (jak np. Imageshack). Gdyby było coś takiego w CSS to by było super, zwłaszcza w połączeniu z tym przyciskiem, który pokazałeś.
Offline
[quote=davidoski]Czy znasz prosty skrypt CSS, który zmieniałby tło całej strony, bez względu na zawartość?
(…)
Zasadniczo chodzi mi o możliwość zmiany białego tła na szare[/quote]
Tylko to są dwa odmienne zadania.
Zamiana tła całej strony jak leci może zostać załatwiona przez:
* { background-color: #color !important ;}
Ale nie jest to najlepszy pomysł, gdyż wtedy [b]cała[/b] strona będzie szara. Już lepiej zamiast gwiazdki wybrać określone elementy (wpisz w wyszukiwarkę „reset CSS” — znajdziesz odpowiednią listę), ale to nadal nie jest dobry pomysł.
CSS nie potrafi nadać określonych właściwości elementowi jeśli ma on już inne właściwości (tzn. potrafi, ale w bardzo ograniczonym zasięgu i akurat w tym kontekście nie potrafi). Mógłby to potrafić JavaScript. Np. poniższy kod powinien nadać szare tło wszystkim elementom o białym tle:
// ==UserScript== // @name get rid of white // @author Gall Anonim // @version 0.1 // @include * // ==/UserScript== (function() { var myColor = '#dcdcdc'; // tutaj sobie wpiszesz jakiś kolor. Musi być w takim formacie document.addEventListener('DOMContentLoaded', function() { var all = document.getElementsByTagName("*"); for (var i=0; i < all.length; i++) { if(all[i].currentStyle.background.toLowerCase().indexOf('#ffffff') != -1) all[i].style.backgroundColor = myColor; } }, false); }) ();
Ale to nadal nie jest najlepsze rozwiązanie.
Generalnie problem sprowadza się do tego, że nie istnieje żaden dobry automatyczny sposób na oddzielenie elementów tła (którym należałoby zmienić kolor) od innych elementów, których kolor nie powinien być zmieniany.
Offline
Zaj....ście działa ten skrypt - lepiej niż ten co wcześniej miałem, bo zmienia tylko białe na szare, a nie wszystko, przez co strona nie jest taka jednolita. Dokładnie o to chodziło. Wielkie dzięki!
[url=http://imageshack.us/photo/my-images/832/piwomm.jpg/][img]http://img832.imageshack.us/img832/1332/piwomm.jpg[/img][/url]
Ostatnio edytowany przez davidoski (2012-04-09 19:22:53)
Offline
Time (s) | Query |
---|---|
0.00012 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00090 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.144.82.128' WHERE u.id=1 |
0.00095 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '3.144.82.128', 1732958834) |
0.00039 | SELECT * FROM punbb_online WHERE logged<1732958534 |
0.00069 | DELETE FROM punbb_online WHERE ident='85.208.96.209' |
0.00090 | SELECT topic_id FROM punbb_posts WHERE id=199742 |
0.00005 | SELECT id FROM punbb_posts WHERE topic_id=21047 ORDER BY posted |
0.00084 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=21047 AND t.moved_to IS NULL |
0.00005 | SELECT search_for, replace_with FROM punbb_censoring |
0.00286 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=21047 ORDER BY p.id LIMIT 25,25 |
0.00090 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=21047 |
Total query time: 0.00869 s |