technikalia

Technika w czystej postaci, wpisy nie tylko o hackowaniu, programowaniu i elektronice...

Pseudoklasa :hover w IE

Standardowo IE nie rozumie pseudoklasy :hover dla innych elementów niż <a>, w przeciwieństwie do FF czy Opery, gdzie sprawa wygląda zgoła inaczej ;) Problem pod przeglądarką Microsoftu można rozwiązać dzięki wykorzystaniu whatever:hover, który umożliwia obsługę :hover także dla innych elementów niż znacznik <a> w Internet Explorerze. Rozszerzenie whatever:hover wykorzystuje behaviors i DHTML, emulując :hover przez “przełączanie” odpowiedniej classy przy zajściu odpowiedniego zdarzenia. “Instalacja” na stronie odbywa się poprzez dołączenie pliku csshover.

Czytaj dalej

Microsoftowy StupidIEHacks

Buszując po przeglądarkowym świecie newsów, po raz kolejny natknąłem się na informację dotyczącą intrygującej “opinii” pracowników Microsoftu na temat ich wspaniałej przeglądarki IE. Pierwszy raz na blogu BinaryChoice.pl, a dziś przypadkiem na Slightly ajar. Ale do sedna… Na jednej ze stron Microsoftu (connect.microsoft.com), a dokładniej na samym dnie pliku arkusza stylów CSS (GeneralStyles.css) można znaleźć ciekawy i zaskakujący fragment kodu jak na stronę samego twórcy IE: /* fix for the IE 1px-off margin error */ * html .

Czytaj dalej

GMail Drive

Obecnie Google oferuje konta pocztowe w ramach usługi Gmail o objętości ponad 2 GB. Po co komu konto pocztowe o takiej pojemności skoro nie da się jej realnie wykorzystać? A jednak można to zrobić na różne sposoby. Pojawiają się ciągle nowe pomysły wykorzystania Gmaila do różnych celów. Jednym z nich jest wykorzystanie konta jako wirtualnego dysku, dzięki programowi GMail Drive :) Ja aktualnie nie używam Gmaila jako konta pocztowego. Jedynie skrypt mysql-db-backup regularnie, codziennie wrzuca tam wygenerowane kopie moich baz mysql… ale od dziś dodatkowo Gmail stał się moim wirtualnym dyskiem :)

Czytaj dalej

Projekt MajIrc

Dziś zacząłem coś robić w sprawie mojego klienta IRC dostępnego na www, bez żadnych apletów Javy czy ramek. Ideą jest stworzenie klienta IRC dostępnego przez przeglądarkę internetową w formie aplikacji webowej z wykorzystaniem Ajaxa. Celem jest łatwe i przyjemne korzystanie z usług IRC-a bez potrzeby instalacji klientów i programów. Połączenie wbudowanych (lub zwykłych) ramek z Ajaxem miało by jakiś sens, ale zostańmy przy aplikacji webowej. Może się wydawać, że popełniłem błąd przy wpisywaniu tytułu notki, że wkradła się literówka, a poprawną nazwą powinno być MalIrc.

Czytaj dalej

class.tlen.php v1.0

Przez awarię sprzętu, jaka mnie ostatnio nawiedziła, nieco się opóźniła prezentacja pierwszej wersji class.tlen.php. Planowane wydanie było bodajże w sobotę, ale dzień wcześniej zjarał się stacjonarny i dopiero teraz mogę wszystkich poinformować, że ukazała się pierwsza wersja klasy PHP obsługującej protokół Tlena ;) Aktualnie do czasu powstania oficjalnej strony projektu kod źródłowy dostępny jest tutaj. Pewnie kod nie został jeszcze oczyszczony z większości błędów, ale takie dopiero pojawiają się przy wykorzystywaniu i pisaniu jakiegoś skryptu go wykorzystującego, więc o wszystkich błędach i spostrzeżeniach proszę informować.

Czytaj dalej

Przymusowe wakacje (offline)

Wielki powrót do świata żywych, to znaczy do podłączonych ;) Niespodziewanie 3 tygodnie temu nagle zniknąłem z sieci i ślad po mnie zaginął. W piątek, dokładnie 3 tygodnie temu, pisząc notkę na MaldevBloga o zbliżającej się publikacji i wydaniu class.tlen.php komputer stacjonarny odmówił posłuszeństwa. Zamarł w bezładzie, w przestrzeni nicości, nieprzesyłając już żadnego zero-jedynkowego sygnału po swoich obwodach i magistralach. Mówiąc krótko i prosto, ale dobitnie, komputer się zjarał! Dzisiaj wreszcie po tych 3-tygodniowych przymusowych wakacjach udało mi się połączyć z siecią już z własnego sprzętu.

Czytaj dalej

Pobieranie danych z Wikipedii

Pisząc klasę do tlena oraz bota wiki a’la jabberowy wiki@jabber.autocom.pl potrzebowałem sposobu na łatwe pobranie danych z Wikipedii. Najłatwiej skorzystać z opcji eksportu wiki do XML-a. Wchodząc na odpowiedni adres otrzymujemy XML z danym hasłem. Wszystko byłoby ładne i piękne, gdyby jakiekolwiek zdalna próba pobrania tych danych z Wikipedii (http://pl.wikipedia.org/wiki/hasło) w PHP nie zwracała błędu 403. Przy próbie użycia funkcji fopen(), file() czy file_get_contents() dostaję błąd: Warning: fopen(pl.wikipedia.org/wiki/Komunikator_Tlen.pl): failed to open stream: HTTP request failed!

Czytaj dalej

Atak spamerów

Pierwszy spam w komentarzach na blogu pojawił się w połowie lutego. Komentarz usunąłem, ale zacząłem się zastanawiać, czy fala botów i automatów spamujących nie dotarła już do mojego DevBloga. I czy nie trzeba będzie na przyszłość pomyśleć nad jakimś sensownym zabezpieczeniem anty-spamowym, bo inaczej zaroi się tu od śmieci i różniastych debilnych linków… Ten moment chyba już nadszedł, bo dziś siedząc sobie spokojnie na Tlenie naraz hurtowo zasypały mnie powiadomienia o nowej poczcie.

Czytaj dalej

Zyski Firefoxa

Ciekawi Was ile zarabia Mozilla na swoim flagowym open-source-owym produkcie? Informacje zamieszczone na kilkunastu witrynach podają sumę rzędu 72 milionów dolarów! Tak, tyle Mozilla Corporation zarobiła w 2005 roku dzięki swojej przeglądarce. Prognozy na bieżący rok również wyglądają bardzo imponująco. Źródłem tych informacji ma być Google. Wszystko za sprawą boksu Google Search standardowo umiejscowionego w prawym górnym rogu przeglądarki. Za każde kliknięcie w reklamy sponsorowane ze strony wyników wyszukiwania Mozilla Corporation otrzymuje swoją prowizję.

Czytaj dalej

CSS a przeglądarki

Meczę się z tym webem, męczę się z przeglądarkami i męczę się z interpretacją standardów… zaczyna mnie to znowu wkurzać. Ale tak jak zawsze, jakoś sobie poradzę :) Mała, ale dość istotna uwaga na przyszłość. Pamiętajmy o wstawieniu na początku pliku prawidłowej i pełnej deklaracji DTD, lepiej nie stosować skróconej wersji. Ja znów o tym zapomniałem i trochę nie potrzebnie się namęczyłem, a ile przy tym straciłem nerwów… Jeśli nie podamy deklaracji DTD to jako domyślna najprawdopodobniej zostanie przyjęta Transitional DTD (w IE).

Czytaj dalej