Skjul/vis tekst i højre spalte
Vis/skjul tekst i venstre spalte
Nu vil vi gerne slå to fluer med ét smæk, nemlig dels opnå det, vi
opnåede med eksempel 5 – at kunne
placere højre/venstre spalte vilkårligt i forhold til artikelteksten
(#indhold-elementet) – og
dels sikre at begge kolonner ser lige høje ud, uanset hvilken kolonne der
har det meste indhold, jf. eksempel 6.
Ser vi først på eksempel 5, kunne vi placere menuspalten
under #indhold-spalten fordi vi float'ede begge
elementer til hhv. højre og venstre. Det kan vi kun gøre, når
begge elementer har en bredde. Men for at vi kan bruge
en baggrundsgrafik til at skabe udseende af ensartede højder
er vi (næsten) nødt til at have en menuspalte med en fikseret
bredde. Og så er vi tvunget til også at have en fikseret bredde
på artikelspalten.
Denne side viser et sådant layout. De operative formregler er:
div#side {width:750px;}
div#indhold {
width:530px;
float:right;
padding-top:1.5em;
padding-left:20px;}
div#menucol {
width:185px;
padding-left:5px;
float:left;
padding-top:1.5em;}
div#wrapper {
width: 100%;
background-image:url(res/leftcolbg200.png);
background-repeat:repeat-y;
background-position:left top; }
En webside kan – for så vidt angår indholdets bredde – konstrueres efter følgende tre principper:
Den mest almindelige kombination er nok én eller to smalle spalter med
fikserede mål og en indholds- eller artikelspalte som er elastisk eller flydende med
en max-width-værdi.
Denne side benytter sig af det først nævnte princip, det vil sige at det
div#side-element, der omslutter alt indhold på siden, er 750 pixel bredt.
#menucol-elementet er 190 pixel bredt og artikelspalten er 550 pixel bred.
Der er ingen “rigtig” metode, men i min optik er udelukkende fikserede mål den mindst fleksible metode, som først og fremmest bør bruges, når der er meget stringente krav til sidens visuelle udformning. gildahayes.com er et eksempel på et sådant layout.
Men hvordan ordner vi det sådan, at vi kan bruge elastiske eller flydende
mål, og alligel float'e to (eller flere) elementer. Svaret på det er at gøre
et 100 procent bredt element mindre end 100 procent bredt. Det kan man ikke
i det virkelige liv, men i cyberspace findes et begreb der hedder negative marginer,
og det er sådanne vi skal benytte os af. Hvordan forklarer jeg i artiklen
2-spaltet layout med negative marginer.
8. august 2007