Tento blog je v současné době uzavřen.
Pokračování blogu na bloguje.cz jsem zrušil. Pokud budu někdy pokračovat, bude to spíš tady.
Máte-li na webové stránce jakýkoliv prvek blokovatelný pomocí rozšíření Adblock (typicky flash, iframe nebo obrázek), zkuste si na chvíli představit, že v kódu vůbec není. Rozhodí to nějak zásadně design? Pak je potřeba to ošetřit, protože uživatel může mít ve Firefox Adblock nastavený na odstranění tohoto prvku z prohlížené stránky.
Co se může stát, když Adblock nějaký prvek odstraní (nevím, zda odstraní z kódu, nebo dá display:none, ale to je jedno)?
A to jsou ta dvě úskalí – design se při aktivaci Adblocku může na jednom místě ošklivě zdrcnout a zatímco absolutně pozicované prvky zůstanou na místě, zbytek stránky se posune.
Ošetření je jednoduché. Prvek, který může být Adblockem postižený, dáme do elementu, kterému nastavíme rozměry. Tedy místo
<img src=‘obrazek.jpg‘ width=‘šířka‘ height=‘výška‘ alt=‘popis‘>
píšeme
<div style=‘width:šířka; height:výška‘>
<img src=‘obrazek.jpg‘ alt=‘popis‘>
</div>
či ještě lépe obalujícímu elementu dáme id a ošetříme to ve stylopisu.
Tím se zajistí, že ani po odstranění prvku Adblockem ze stránky se nic neposune, na místě prvku bude prázdno.
Někdy nevadí, že je prvek odstraněn, ale vzniká problém s absolutně pozicovanými prvky za ním. Na to je asi nejúčinnější nekombinovat v takovém případě absolutní pozicování s volným tokem dokumentu, ale prvky, které chci absolutně pozicovat, připevnit k jinému prvku v bloku.
Další články si můžete vyhledat v jednotlivých přihrádkách, případně podle data.
© Honza Hučín 2004–6
Šuplík běží na PIPNI.CZ. Díky!
8. 8. 16:48 | Pepa
7. 8. 21:26 | Honza Hučín
7. 8. 21:02 | Honza
6. 8. 14:29 | Pepa
3. 8. 18:29 | Honza
*1967, absolvent MFF UK v Praze (1991)
statistik, analytik, programátor, učitel, hudebník