Rahinaa.biz / Lehti / IE6 joskus vaan kismittää niin paljon
Julkaistu: 26. huhtikuuta 2008 Kategoria: yleinen
Taas on Internet Explorer 6 tuottamassa päänvaivaa. Kehnompaa selainta ei voisi etsiä, se nimittäin joka kerta vaikeuttaa sivuston suunnittelua – jos sen haluaa tehdä ilman korjauksia saati ylimääräisiä XHTML koodeja. Aina potuttaa ja rimpuiluttaa, kun joutuu lisäämään sen yhden ylimääräisen divin, jotta se sivusto toimisi sillä iän-ikuisella IE6:lla. Eihän toisaalta se yksi divi ole paljoa, mutta kun ilman näitä selaimia sitä ei tulisi olla ollenkaan – sillä ylimääräisellä koodillahan ei ole mitään virkaa yhdessäkään toisessa selaimessa.
Tänään on erään sivuston ulkoasun kanssa tullut taisteltua. Nimittäin hakukoneoptimoinnin mielessä tai paremminkin siihen liittyen. Olen korjaillut koodia, saati työntänyt tämän tulevan sivuston navigaatiota ja turhempaa sisältöä, sen pää-kontentin tieltä syvemmälle sivuun, siis sinne alemmas loppuunpäin. Samalla olen poistanut turhia tageja, jotka ovat siellä vain IE6:n takia, sillä se joistain kumman syystä tuntuu keksivän mitä ihmeellisempiä renderöintitapoja, kun se huomaa floatin, display-blockin, saati padding jossain. Tämä elementtien syvemmälle sijoittelu onnistuu helposti floatin ja position: absolute yhdistelemisellä, jolloin muut elementit heitellään eri kohtiin ja vireikkäin floateilla ja navigaatiot, sekä muuttumattamat kohdat heitetään tarkkoihin pisteisiin positionilla. Tämä kaikki toimii ja on helppoa – tai ainakin niin voi luulla, kunnes katsoo täysin virheetöntä koodia vanhemmilla selaimilla.
Todella vanhoihin ei tosin kannata edes mennä, nehän eivät tue edes floatia, saati positionia, mutta entäs tämä IE6. No, sen tulisi tukea noita kahta määritelmää lähes virheettömästi, mutta silläpä sattuu olemaan niitä niin tuttuja bugeja, tosin helposti korjattavissa, mutta kuitenkin se kismittää lisätä sinne ylimääräisiä katkaisijoita tai kontainereita – koodistahan tulee silloin.. raskaampaa, puhumattakaan sen turhuudesta.
Tämän päivän taistelun kohde on ollut: floattaavan elementin marginaali ja padding syövät sen alapuolella olevan elementin, johon on määritetty position: absolute. Aika erikoista eikö? Toisaalta onhan se hieno tapa piilottaa se navigaatio kokonaan, vaikka sen pitäisi hypätä sinne sivun ylälaitaan muun sisällön yli. No tämän takia tuli lisätä sinne väliin extra-elementti, ihan mikä randomi elementti tahansa. Sitten tämä selain ei syö navigaatiota.
Mutta niin kauan kun IE6:sta käytetään laajalti, tulen minä noita vikoja korjaamaan, vaikka kuinka kismittää. Toisaalta olisihan se hienoa, jos kaikki käyttäjät päivittäisivät selaimensa, mutta siihen vaadittaisin jo jonkinasteinen mystinen fantasiamaailma – todellisuudessa se kai on mahdotonta.
Onnekseni yleensä tekemäni leikkaukset toimivat aikalailla täysin IE6:lla – lukuunottamatta sitten niitä kestobugeja joita ei voi korjata, laittamatta koodin joukkoon tyhjiä div palikoita liiakseltaan – ja se vasta tyhmää onkin. Tämä sivusto ei kyllä IE6:lla täysin toimi, sen tietävät kaikki.
Kommentointi suljettu [5] Tagit: ie
Floattien kanssa ongelmia voi yrittää vähentää käyttämällä CSS-merkkauksessa halutuissa elementeissä sitä clear: both; -ominaisuutta. Tuossa esimerkkitapauksessa navigaation kohdalla voisi käyttää tuota tyhjennystä. Kokeile myös tällaista:
clear: both;
display: block;
Petri, tiedän kyllä tuon, sitähän tulee käytettyä muilla selaimilla, mutta tietysti sen floattaavan elementin jälkeen, tai sitten käyttämällä speudoa, jolloin ei tarvita mitään elementtiä.
Mutta tuossa se ei pahemmin auta, sillä se ei ollut ongelma, se ei jäänyt alle, vaan se syötiin. Siis se ei kadonnut minkään objektin alle, vaan se vain bium – katosi. Toisekseen noilla ei ole vaikutusta, sillä position: absolute; elementti leijailee päällä ;)
Vähän samanlainen vika kuin margin joka joskus saa taustakuvan jatkumaan.
Jos et sitten tarkoita että siihen väliin laitettavaan elementtiin laitetaan nuo? No tietysti, jokainenhan floattaava elementti tulee aina “puhdistaa” :) – mutta se ei vaikuta mitenkään position-määriteltyyn elementtiin.
Toisaalta “kohta” meidän ei enää tarvitse käyttää leiskan taittoon floattia – ainakaan niin paljon. Siis ainakaaan kolumneihin, toisaalta onko se hyvä juttu, mene ja tiedä. Tosin silloin ei tarvitse ainakaan huolehtia sivuvaikutuksista. Tosin ne vanhat selaimet eivät CSS3 tule tukemaan, ja nykyäänkin taitto tehdään näin miten tehdään, vain niiden vanhojen selainten takia.
Minunkin mielestä se on aivan pirullinen kidutusmenetelmä.
Omalla sivullani en välitä miten sivu näkyy ie6:sella.
k00pa, kannattaa ainakin vähän välittää. Onhan niitä IiEen käyttäjiä lähes poikkeuksetta melko suuri prosentuaalinen määrä kokonaiskävijämäärästä, ellei kyseessä ole jokin erityinen Opera/Firefox über alles -henkinen sivusto. Täysin identtistä ulkoasua eri selaimille on turhan hankala lähteä tekemään, eikä se aina edes ole mahdollista, mutta pidän ihan terveellisenä tapana saada sivusto toimimaan edes kohtalaisen hyvin myös niillä “huonoilla” nettiselaimilla.
Tämän bloggauksen kommentointi on suljettu, sen oltua auki 26. huhtikuuta 2008 lähtien kuusi viikkoa. Tuona aika merkintä sai 5 kommenttia. Merkinnän kestolinkki: http://www.rahinaa.biz/lehti/ie6-joskus-vaan-kismittaa-niin-paljon
Elämä on pääasiassa kahvia, taiteilua, ohjelmointia, musaa, tunteita, nauttimista, aurinkoa, kävelemistä, kokkaamista, elokuvia hitusella kauneutta, sekä vastakohtaista rumuutta.
Jukka, 19,
web developer,
haahuilija,
musafriikki
© Copyright 2008 Jukka Svahn. All rights reserved. Sivun ylälaitaan