Nikdy mne nepřestaneš překvapovat…

Přesně tato věta se nesla dnes večer mým pokojem. Předskokany jí byly mnohé technicismy a vulgarismy. Adresátem pak Internet Explorer, konrétně pak verze šesté. Co mi provedl?

Představte si, že máte velmi subtilní kód, trivialitu, prostě něco, co vytváříte dnes a denně a dali byste ruku do ohně za to, že taková věc bude fungovat přesně tak, jak si usmyslíte. Máte? Výborně, teď si představte, že majoritní prohlížeč vám tento kód zmrší. Ve skutečnosti je to ještě mnohem děsivější, než si představujete.

Já jsem měl tento naprosto neškodný kód:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
        <title>Title</title>
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
        <meta name="robots" content="index, follow" />
        <meta name="description" content="" />
        <meta name="keywords" content="" />
        <style type="text/css">

                a { width: 100%; border: 1px solid #ddd; padding: 5px 0; display: block; margin-bottom: 5px; }
                a:hover { background-color: #888; color: white; }

        </style>
</head>

<body>
    <a href="#">test</a>
    <a href="#">test</a>
    <a href="#">test</a>
    <a href="#">test</a>
</body>
</html>

Vím, že se mezi mými čtenáři vyskytují jak začátečníci-nadšenci, tak profíci (a třebas taky excitovaní), proto se všech ptám: kdo z vás na první pohled bez čtení dalších odstavců vidí, kde je problém, který by mohl způsobit odlišné chování Internet Exploreru při najetí myši na odkaz? Pokud se někdo takový najde, budu mu klidně celý týden říkat „šedovousý kodérský guru“.

Problém?

Ano, zde máte živou ukázku tohoto dokumentu. Přejeďte si všechny odkazy postupně ve vašem oblíbeném prohlížeči a poté v Internet Exploreru. Doufám, že nikomu z vás ke splnění předchozího požadavku nebude stačit jeden prohlížeč. Pozorujete rozdíl? Zatímco FF, Opera a další nemají nejmenší problém, Internet Explorer při přejetí třetího či čtvrtého odkazu ovlivní horní odsazení předchozího odkazu. Přesněji řečeno jej vynuluje. Proč?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
        <title>Title</title>
        <meta http-equiv="content-type" content="text/html; charset=utf-8" />
        <meta name="robots" content="index, follow" />
        <meta name="description" content="" />
        <meta name="keywords" content="" />
        <style type="text/css">

                a { width: 100%; border: 1px solid #ddd; padding: 5px 0; display: block; margin-top: 5px; }
                a:hover { background-color: #888; color: white; }

        </style>
</head>

<body>
    <a href="#">test</a>
    <a href="#">test</a>
    <a href="#">test</a>
    <a href="#">test</a>
</body>
</html>

Však se koukněte sami.

Co z toho plyne?

Tímto zápiskem jsem si jen chtěl postesknout, že svět kodéra je jedna velká džungle, kdy většinu nejzlověstnějších mokřadů tvoří Internet Explorer. Internet Explorer je také had, který vás v této džungli může uškrtit, brouk, který vás sežere nebo podezřelá květina, které se sotva dotknete a už je shnilá. Džungle by se ničit neměly, ale v tomto případě budu tvrdě prosazovat vypalování ohnivou liškou (pandy jsou chráněné) a mýcení kvalitní norskou pěveckou ocelí.

Tramvajákům taky přece nikdo nahodile nevytrhává koleje!

20. 11. 2005, 23.59 | (X)HTML, CSS, Prohlížeče.


Zanechte komentář





Můžete použít Texy! formátování.
Pokud se obsah boxů níže mění, zatímco píšete, potom žádné číslice nevyplňujte. V takovém případě antispam funguje, pouze se prohlížeči nepovedlo skrýt tento box.