-->

Úterý 22. 6. 2004 (09:59)
Počítače, internet, IT

Blinkání v Internet Exploreru - jak na to

Tohle ani tak není návod, jak donutit IE blinkat, ale zhrnutí možných náhradních řešení a jejich výhod a nevýhod.

Začnu hezky polopaticky, takže nejdříve vysvětlím, co je vlastně blinkání. Není to nic jiného než rozblikání jisté části (např.) textu stylem text-decoration: blink nebo uzavřením textu určeného k blikání do párového tagu blink. Ani jednu možnost Internet Explorer nepodporuje. Trošičku pikantní je, že starý wysiwyg editor FrontPage Express 2.0 dodávaný s IE5 uměl aplikovat blinkání přestože to IE nepodporovalo a nepodporuje. Takže Microsoft tehdy zakomponoval špek, který podporovalo jen úzké procento - konkurenčních - prohlížečů. Dnes blinkání není problém pro Mozillu 1.7, Operu 7.51 ani Firefox 0.9 (vč. starších verzí). Jen to IE pořád blinkat neumí. Někdo tvrdí, že je to dobře, protože by pak blinkal celý internet - podobně kdysi byla mánie s běžícím textem (ten zase pro změnu podporuje jen IE). Já bych však širokou podporu blinkání ocenil. Rozbliká-li se nějaký text, tak zajisté do své oblasti přiláká oči a tím i návštěvníkovu pozornost. A proto třeba na rozblikání slov „Nový“ u článku v nějakém magazínu nebo „Upozornění“ v jakémkoliv jiném webu. No jo, ale jak na to? Samozřejmě, že lze aplikovat jak styl tak párový tag s tím, že IE text nerozblinká, ale jinak jej nechá na pokoji, ale vzhledem k rozšířenosti IE to vlastně přinese užitek jen pár procentům uživatelů moderních browserů. Takže jaká jsou náhradní řešení?Jenže každý z nich má své nevýhody.

DHTML řešení

DHTML rozumějte šikovnou kombinaci CSS a JavaScriptu. Rozblinkat takto text není pro začátečníka žádná sranda. Proto jsou na internetu stovky již sepsaných skriptů na rozblikání textu. Ty však mají řadu nevýhod. Jednak s nimi naboptná kód stránky (lze je však volat z externí knihovny - neco.js) a jednak je tam špatná spolupráce mezi browsery. Pár těch skriptů, co jsem viděl, je čistě jen pro IE resp. to jsou všechny, ale některé nemají větvení kódu pomocí podmínky a zjištění browseru. To je třeba dopsat, což také není pro každého procházka růžovým sadem. A pak je tu ke všemu ještě problém, že i když se může skriptu browser ohlásit jako IE, může jít klidně o Operu vysílající jinou identifikaci. Podle mých zkušeností skoro 70% těchto předdefinovaných skriptů při své nefunkčnosti (to je třeba i v Opeře nebo Mozille bez větvení kódu) rozhodí vzhled stránky nebo přinejmenším vypíše do textu nějaké bláboly.

Skript + formulář

Stačí jednoduchý JavaScript s časovačem měnící obsah textového pole (formuláře). Jednou tam text je a podruhé není. Stylem pak můžete prvek formuláře natolik zamaskovat, že návštěvník nemůže poznat rozdíl oproti normálnímu textu. To je asi jedno z nejschůdnějších řešení, ale při zvětšování či zmenšování písma v IE nedojde k relevantní změně velikosti formuláře. Třeba Opera to řeší naprosto v pohodě, ale my přece nepotřebujeme řešení pro Operu, kde klasické blinkání funguje normálně, nýbrž řešení pro Internet Explorer.

GIFy, Flash, JavaApletty

Tato řešení jsou používána opravdu hojně. Opět však nastává problém při změně velikosti textu nebo při zadání jeho velikosti v relativních jednotkách. Nastane nepoměr velikosti blikátka vůči textu. Podpora Flashe, JavaAppletů, obrázků (nebo jen animovaných GIFů) navíc nemusí být aktivní a to buď z důvodu zakázání v browseru nebo z důvodu nepřítomnosti patřičného plug-inu (pro Flash) nebo Java Virtual Machine (pro JavaApplety).

Řešení

Já jsem na ideální řešení nepřišel. Jestli vy ano, použijte formík k zaslání reakce.

Reagoval MARINAKX: marquee> jede ve vsem : ) Opera 7.51, FF 0.9 i mozillak 1.8a muzes se presvedcit na mim webiku http://tbtaf.pc.cz/ a s tim blink taky jsem to chvili pouzil ,ale po case je to otravne stejne jako bezici text takze nakonc je to vlastne neni potreba...

Má odpověď: Běžící text jede všude? No jo, také koukám. Zblbnul mě Yuhů, protože na http://www.jakpsatweb.cz/html/rozsireni.htm#marquee píše „marquee Jezdící text. Párový tag obklopující ten text. Prohlížeče, které marquee neznají, text zobrazují normálně. Podporuje Internet Explorer.

Reagoval Michal A. Valášek: Že MSIE nepodporuje blikání textu osobně považuji od Microsoftu za tah vemi chytrý a hodný následování. Blikání a podobných vylomenin je na webu i tak víc než je zdrávo. A pokud někdo opravdu musí mít "new" blikací, tak ať si to udělá spánembohem jako GIF.

Má odpověď: Ano, je pravda, že je moc maniaků, kteří by to přeháněli (podobně jako kdysi běžící text - dnes už je to lepší) a GIF je asi to nejlepší možnou volbou, když už to nelze jinak. Ale já osobně bych podporu blinkání v IE uvítal.

Reagoval dgx: Ale Jirko, od kdy se ve slově BLIKAT píše "N"? Z toho spotu se mi vážně udělalo trošku nevolno od žaludku :-)

Má odpověď: Od doby, co se to řekne anglicky „blink“ a co se jak ve stylu, tak v tagu pro rozblikání používá slovo „blink“. Píšu to schválně - ze srandy. Vyjímečně to není to překlep či neznalost.

SLEDOVAT ZMĚNY | VYTISKNOUT | Podělte se o odkaz na linkuj.cz nebo del.icio.us




Stálý odkaz (permalink): Stálá adresa tohoto zápisku je http://blog.macich.net/1087898340-blinkani-v-internet-exploreru-jak-na-to.html (pro IE: vložit do schránky | přidat k oblíbeným). Chcete-li na zápisek odkázat, použijte ji.

Další zápisky: Následujícím zápiskem je spot Nechte nás už na pokoji, Lupouni!!! Předešlým zápiskem je spot Končím s Linuxem Další pak naleznete při navigaci z hlavní stránky. Můžete se také podívat na seznam všech zápisků.

Aktuální místo vašeho pobytu: Macich.NET » Blog počítačového nadšence » Počítače, internet, IT » Blinkání v Internet Exploreru - jak na to





Sledování změn

Váš e-mail:

Zde můžete zadat e-mail, na který vám bude automaticky službou Woko.CZ zasláno upozornění na případnou změnu stránky. Dozvíte se tak např. o přidání dodatku či komentáře.