Gå til innhold

Tanker om layout


Anbefalte innlegg

Enkelte ganger sitter jeg her og lurer på hvorfor flyten på layout er som det er på en HTML side. CSS er jo herlig og flott, men opplevelsen fra nettleser til nettleser er ikke alltid helt identisk.

 

Hvis noen har lekt litt med C# e.l. og vet hvordan Form designeren der fungerer, sånn docking (finnes vel noe liknende i Java og), er dette en ting jeg savner i layout-delen på en webside.

 

Hvis man bruker float i CSS så er jo dette greit i de tilfellene vinduet er i riktig størrelse. I noen tilfeller så gjør det heller ikke noe om enkelte elementer flytter på seg ved bruk av float og når man endrer størrelsen på vinduet.

 

Men hvis man prøver å unngå bruk av tables og ikke bruke tables som en slags layout ting, men at man her bruker CSS og DIV elementet. Og hvis man prøvde å lage en DIV med variabel bredde som f.eks en meny og vil ha denne floatet left. Og vil ha en annen DIV som er innhold på siden til høyre for denne menyen. Så kunne jeg faktisk tenkt meg at denne menyen var på en måte låst/docked med den DIV'en til høyre for den, at de på en måte påvirket hverandre, men ikke slik at den DIV'en til høyre wrapper seg under meny DIV'en hvis vinduet blir forandret i bredden.

 

Vet at man kan bruker position: absolute og top og left sakene.. men det er ikke noe måte å finne ut hvor bredt et element er og si til det andre elementet hvor den skal plasseres.

 

Jeg kunne sikkert ramset opp en hel del. Som f.eks, hvorfor 100% bredde på et element hvor man har satt margin til noe > 0 og f.eks padding > 0 og elementet kommer utenfor skjerm. Er dette bugs i logikken bak nettleseren eller svakheter i utforming av logikken?

 

Er det flere som savner en del ting når det kommer til layout på en webside, ting som kunne gjort hverdagen enklere, eller må man rett og slett bare akkseptere slik det er?

Lenke til kommentar
Videoannonse
Annonse

Problemet med bredde og wrapping som du omtaler, tror jeg du kan løse ved å bruke eksemplene på glish.com, de har hvertfall hjulpet meg en del.

 

Når bredde angis med prosent i css, regnes de prosentene av den synlige nettsida. 100% dekker akkurat hele bredden. Egenskapen padding er også en raritet, i og med at IE klarer å tolke den annerledes enn den bedre majoriteten av nettleserne. IE tror at padding er inkludert i den bredden som er oppgitt, mens den korrekte tolkningen er at bredden på et element er width+padding.

Lenke til kommentar

Vel tja, hvor har du lest at det er width+padding? Ifølge denne linken: http://www.w3.org/TR/REC-CSS2/box.html#box-dimensions virker det som at width totalt skal gjelde border+margin+padding og content width.

 

The box width is given by the sum of the left and right margins, border, and padding, and the content width. The height is given by the sum of the top and bottom margins, border, and padding, and the content height.
Lenke til kommentar

Tok en titt på denne http://glish.com/css/2.asp

Ideen virker ganske grei, men *grin* det løser ikke problemet. Man må fortsatt sette width på elementene. Min tanke gikk mer ut på at width ble bestemt utfra hvor bredt innholdet ble i meny-DIV'en og at innhold-DIV'en fylte opp resten av skjermen. Dette blir bare ønskedrøm, siden dette kanskje aldri kommer til å bli gjort noe med likevel på det nivå jeg tenker på. *sukk*

 

Illustrasjon: http://home.chello.no/~alexholm/test/eksempel.jpg

 

Kan alltid falle tilbake til tables og få den layout man ønsker, men likevel litt surt, siden CSS er kommet for å bli.

Lenke til kommentar
Vel tja, hvor har du lest at det er width+padding? Ifølge denne linken: http://www.w3.org/TR/REC-CSS2/box.html#box-dimensions virker det som at width totalt skal gjelde border+margin+padding og content width.

 

The box width is given by the sum of the left and right margins, border, and padding, and the content width. The height is given by the sum of the top and bottom margins, border, and padding, and the content height.

Beklager, min feil. Tenkte ikke på de andre faktorene da jeg skrev innlegget :)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...