Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: todellinen absolute?

Paulus M [28.12.2009 23:20:33]

#

Eli vielä tällainen kysymys: Miten CSS taitossa saa sellaisen position, että koordinaatit lasketaan kaikissa elementeissä vasemmasta yläkulmasta, eikä siten, että jossassakin elementeissä laskentaa aloitetaan toisen elementinlopusta?

Sienikasvusto [28.12.2009 23:51:57]

#

Kokeile seuraavaa:

position:absolute;

Löydät lisää tietoa täältä:
http://www.w3schools.com/Css/pr_class_position.asp

EDIT: En huomannutkaan aiempaa viestiketjua jonka olit tehnyt, joten tätä et varmaankaan hakenut.

Merri [29.12.2009 02:22:55]

#

Suora vastaus on, että "silloin kun ainutkaan absolute-elementeistä ei ole sisäkkäin".

Silloin kun kaksi absolute-elementtiä on sisäkkäin, niin sisemmän koordinaatit määräytyvät ulomman absolute-elementin mittasuhteiden mukaan (esim. sisemmän 100% leveys = ulomman leveys, eli jos ulomman leveys on vaikka 200 pikseliä niin sisemmänkin leveys on 200 pikseliä).

Sama koskee myös relative-elementtiä, sen sisällä olevat absolute-elementit sijoitetaan tämän relative-elementin mittasuhteiden mukaisesti. Relativea on myös mahdollista heilautella paikaltaan määrittäen left ja top -arvoja, mutta tätä näkee harvemmin.


CSS-taitossa on kuitenkin tehokkaampaa rajoittaa elementin kokoa ja tehdä sijoittelua esim. marginaaleja ja kellutuksia (float) käyttäen. Tämä vähentää riippuvuutta pikseliarvoista ja CSS-koodistakin tulee useimmiten lyhyempää kuin kaikki eri pikseliarvot jokaiselle elementille määriteltäessä. Joustavuus on paljon parempi, ei tarvitse sitä JavaScriptiä joustavuuden luomiseen kun elementtien leveys mukautuu automaattisesti. Lisäksi myös rakenteellisesti koodista tulee siistimpää.

Metabolix [29.12.2009 11:19:58]

#

Se, että elementit ovat sisäkkäin, tarkoittaa loogisesti, että niiden pitäisi sivullakin olla jollain tavalla sisäkkäin, jolloin on järkevää, että etäisyys lasketaan ulommasta elementistä. Jos ne eivät sivulla ole sisäkkäin, niin saman tien ne voi koodissakin kirjoittaa erikseen, jolloin absolute toimii haluamallasi tavalla.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta