ohjeita web-sivuston tekijälle
Tyylipohjat tuovat uusia mahdollisuuksia web-sivun palstoittamiseen. Tyylipohjien avulla voidaan mikä tahansa elementti sijoittaa web-sivulla mihin tahansa kohtaan, sillä tyylipohjien asemointi toimii pikselintarkasti. Tässä vinkissä esitellään tekniikka monipalstaisen sivun tekemiseen.
Sivujen palstoitus on ennen tyylipohjia rakentunut kehyksien ja taulukkojen varaan. Ei ole suositeltavaa käyttää kehyksiä, sillä ne muun muassa rikkovat sivujen rakenteen, estävät hakukoneiden toimintaa ja vaikeuttavat tulostusta. Taulukkojen käyttöä ulkoasun luomiseen ei voi suositella, sillä taulukot ovat olemassa vain ja ainoastaan taulukkomuotoisen datan järkevään esittämiseen.
Selainten tuki tyylipohjille on nykyään tarpeeksi kattava, jotta tämän kaltaisia ohjeita voidaan suositella käytettäväksi. Tyylipohjien tehokkuus näkyy myös siinä, että vaikka selain ei tyylipohjia tukisikaan, on sisältö täysin luettavissa. Näytön leveyskään ei tuota ongelmaa, sillä kuva-alan käydessä liian kapeaksi selaimet rivittävät palstat allekkain eivätkä pakota niitä vierekkäin turvautuen vierityspalkkeihin.
Palstoittaminen tyylipohjilla tapahtuu siten, että jokainen palsta ryhmitetään omaksi div-elementikseen.
<div class="palsta"><p>Ensimmäinen palsta</p></div> <div class="palsta"><p>Toinen palsta</p></div> <div class="palsta"><p>Kolmas palsta</p></div>
esimerkit/palstat_ei_tyylia.html
Ilman tyylipohjia palstat rivittyvät allekkain omiksi kappaleikseen.
Palstojen saamiseksi vierekkäin lisätään palsta-luokalle tyylisäännöt. Kelluttamisen lisäksi palstoille täytyy määrätä leveys, jottei yksi palsta pääse viemään koko sivun leveyttä.
.palsta {
float: left;
width: 33%;
}
esimerkit/palstat_tyylilla.html
Lopuksi pieni vinkki siitä, miten palstoituksen jälkeisen sisällön saa rivittymään oikein. Palstoitus pitää siis katkaista, ettei kaikki sitä seuraava sisältö rivity palstojen oikealle puolelle. Tämä onnistuu tyylipohjien clear-määritteellä. Valmis kolmipalstainen sivu näyttää seuraavalta:
<div class="palsta"><p>Ensimmäinen palsta</p></div> <div class="palsta"><p>Toinen palsta</p></div> <div class="palsta"><p>Kolmas palsta</p></div> <div style="clear: both;"> <hr /> <address>Tätä sivua päivittää Juha-Pekka Järvenpää</address> </div>
Tätä sivua on viimeksi päivitetty 26.2.2004.
paska
Jossakin ohjeissa suositeltiin, ettei tableilla saisi taittaa sivua. Onko tyylitiedostoilla mahdollista tehdä koko sivun taitto. Oheinen esimerkki kertoo kuinka laittaa sivu palstoihin, mutta voiko niiden avulla luoda samanlaisen asettelun kuin taulukoilla?
2.12.2004 08:48Miten saan tehtyä palstat marginaalien sisälle? Olen tehnyt marginaalit sivuilleni(10% ja 20% reunoista) ja yritän sinne sisälle laittaa kaksi palstaa, joilla olisi myös otsikko. Kuinka onnistun tässä, en ole vielä onnistunut.
2.12.2004 09:20Korjataampa äskeinen... Onnistuin yrittämässäni melkein heti kysyttyäni neuvoa. Joten ei tarvitse siihen apua. Mutta sanotaan nyt että näistä sivuista on saanut todella paljon apua kotisivujen teossa. Kiitos siitä.
28.4.2005 21:10Voiko palstojen väliin jättää tyhjää tilaa, muuten kuin tekemällä uuden palstan vanhojen palstojen väliin ja laittamalla sinne läpinäkyvän kuvan?
29.4.2005 09:34Ei kannata keksiä pyörää uudelleen. Tyylipohjilla saa margin-määritteellä marginaalia minkä tahansa elementin ympärille.
<div style="margin-left: 10em;">
"Näytön leveyskään ei tuota ongelmaa, sillä kuva-alan käydessä liian kapeaksi selaimet rivittävät palstat allekkain eivätkä pakota niitä vierekkäin turvautuen vierityspalkkeihin."
Kätevää, mutta onko kuitenkin mahdollista tehdä niin, että palstat eivät rivity allekkain tilan käydessä vähiin, vaan käytetään vierityspalkkeja?
Pystyykö tällä tekniikalla tuottamaan sivun, jonka vasten palsta olisi sivun kokonaisleveydestä 1/3 leveä ja oikea palsta 2/3? Vai edellyttääkö systeemi sitä, että kaikki palstat ovat keskenään yhtä leveitä?
6.5.2005 16:06Voi, teet vain kaksi eri nimistä DIViä.
10.8.2005 09:48Ei palstoilla kannata vielä koko sivua väsätä. IE:llä ei tietääkseni palstat kunnolla toimi, ja jos palstoissa käyttää PIKSELEITÄ, niin ei saa mitään asiaa kohdidistettua sinne minne haluaa, sillä eri resoluutioilla pikselien määrät vaihtelevat, ainut järkevä tapa on käyttää palstoja prosenteilla. En suosittele sivujen tekoa pelkästään palstoilla, sillä taulukoilla saa sivut vallan mainiosti tehtyä. En ymmärrä minkä takia väitetään että taulukoilla ei pitäisi tehdä sivuja. MItä se haittaa. Ei yksinkertaisesti mitään, ja lisäksi taulukoilla saa mainiosti tehtyä sivut.
13.10.2005 22:30Selittäisitkö vielä kuinka voi laittaa taulukot vierekkäin??
16.11.2005 18:07Voisiko tuon div-elementin jotenkin keskittää? Olen tehnyt sivun ulkoasun diveillä mutta koko sivu jää harmillisesti vasempaan reunaan. Kiitokset!
18.11.2005 19:08Div-elementti keskitetään seuraavasti:
<div style="margin-left: auto; margin-right: auto;">keskitetty</div>
Saako palstalle jotenki oman taustavärin tai kuvan?
18.4.2007 14:02Minulla on valmis kaksipalstainen web-sivupohja, jota olen editoinut Frontpagella. Aina kun lisään tekstiä oikealle palstalle, niin vasemman palstan tekstit liikkuvat alas. Millä komennolla vasemman palstan tekstit saataisiin lukittua eli pysymään paikallaan ja mihin kohtaan tämä komento tulisi lisätä?
26.4.2007 12:43toinen palsta on varmaan liian leveä :>
18.8.2009 13:12Miten palstojen reunat saa näkyviin?
25.11.2009 09:34jos haluatte esm, sateenkaari värit eli niinkuin näin:
-----------------------------------------------------
eka vaik punainen väri tässä
-----------------------------------------------------
tässä sit sininen
ja sillee voi jatkaa. niin sen saa div koodilla näin:
<div style="background-color:black">
tulee musta
dsfsaf