Nieuws
  • Home
  • Nieuws
  • Foto's
  • Portfolio
  • Muziek
  • Inloggen
  • Contact
  • Stats
  • Help »
  • 2012
  • 2011
  • 2010
  • 2009
  • 2008
  • 2007
  • 2006
  • 2005
  • Website Maken II


    Door Yupsie op sunday 17 july 2011 om 17:55

    Introductie

    In deel 1 van deze tutorial hebben we een indeling gemaakt van een HTML pagina, in dit deel gaan we ervoor zorgen dat het eruit komt te zien zoals we dat willen, door middel van CSS (Cascading Style Sheets). De CSS code komt tussen de <style> tags, zoals we al in deel 1 hebben geleerd. Vanaf hier zal ik de tags als html weergeven, in plaats van <html> tag.

    Ook hier ga ik beginnen met de html en de body, de head zal niet zichtbaar zijn op de pagina, dus deze hoeven we ook niet te stijlen. In de praktijk wordt een body vaak op dezelfde manier benaderd als de html, maar omdat we hier willen dat de gehele pagina 960 pixels breed is, kunnen we dit alvast definiëren in de body. Standaard zijn deze tags 100% breed en de hoogte is afhankelijk van de inhoud.

    Taal: CSS
    1
    23
    45
    6
    html {
        background-color:#ffffff;}
    body {    width:960px;
    }
    Parsetijd: 0.007 seconden

    Voor het voorbeeld heb ik wederom de randen voor de div's erbij gehaald:

    We willen dat de body in het midden is uitgelijnd, hiervoor gebruiken we het margin attribuut, deze kan op 3 manieren geschreven worden. Als het 1 waarde heeft, geldt dit voor de bovenkant, links, rechts en de onderkant. Wanneer het 2 waarden heeft, geldt de eerste voor de bovenkant en onderkant. De tweede waarde geldt voor de linkerkant en rechterkant. Met 4 waarden is de volgorde: boven, rechts, onder en links. Dit is te onthouden met trouble voor top, right, bottom en left. Hier hebben we maar 2 waarden nodig, de bovenkant en onderkant krijgen een marge van 0 pixels, links en rechts krijgen de waarde auto om het in het midden uit te lijnen:

    Taal: CSS
    1
    23
    45
    67
    
    html {
        background-color:#ffffff;}
    body {    width:960px;
        margin:0px auto;}
    Parsetijd: 0.007 seconden

    Nu ziet onze pagina er zo uit:

    De schrijfwijze, of syntax van CSS is als volgt: Eerst geven we het element op waar we de stijlen aan willen toewijzen, in dit geval beginnen we met html. Dit wordt gevolgd door accolades { en } waartussen de stijlregels komen te staan. Eerst het attribuut background- color gevolgd door een dubbele punt : en de gewenste waarde #ffffff. Elke regel wordt afgesloten met een puntkomma ; .

    Hier heb ik de html een witte achtergrondkleur meegegeven, door middel van een hexadecimale waarde, er zijn ook kleuren die door middel van een woord gedefiniëerd kunnen worden, maar wegens de beperkingen daarvan, zal ik hier ingaan op de hexadecimale waarden. Dit begint met een hekje, gevolgd door twee cijfers voor rood, daarna twee cijfers voor groen, en twee cijfers voor blauw. Een overzichtje:

    De invulling van de body

    We beginnen maar eens met de randen die ik heb gebruikt in bovenstaande voorbeelden, zwarte randen van 1 pixel breed. Deze moet doorlopen, vandaar de solid. Hier kunnen ook onder andere de waarden dotted of dashed gebruikt worden, voor respectievelijk een gestippelde of gestreepte rand:

    Taal: CSS
    1
    23
    45
    
    div {
        border-width:1px;    border-style:solid;
        border-color:#000000;}
    Parsetijd: 0.007 seconden

    Met deze code worden alle div's in de pagina aangesproken. Niet elke div moet dezelfde stijl krijgen, dus hier komen de id attributen van pas die we in de HTML code hebben gezien, te beginnen met de breedte en hoogte van de div's:

    Taal: CSS
    1
    23
    45
    67
    89
    1011
    1213
    1415
    16
    div#header {
        width:960px;    height:100px;
    }div#section {
        width:800px;    height:500px;
    }div#aside {
        width:160px;    height:500px;
    }div#footer {
        width:960px;    height:50px;
    }
    Parsetijd: 0.007 seconden

    Nu zien we dat de breedte wel is aangepast, maar alles staat nog onder elkaar. De volgende stap is de positionering, we gebruiken een relatieve positie, hierbij wordt dan de positie van het bovenliggende element, in dit geval body, gebruikt om de div's te positioneren, daarna kunnen we een top en een left toewijzen, omdat we van de hoek linksboven uitgaan. Hier kunnen ook bottom of right gebruikt worden.

    Taal: CSS
    1
    23
    45
    67
    89
    1011
    1213
    1415
    1617
    1819
    2021
    2223
    2425
    2627
    28
    div#header {
        width:960px;    height:100px;
        position:relative;    top:10px;
        left:0px;}
    div#section {    width:800px;
        height:500px;    position:relative;
        top:10px;    left:0px;
    }div#aside {
        width:160px;    height:500px;
        position:relative;    top:10px;
        left:800px;}
    div#footer {    width:960px;
        height:50px;    position:relative;
        top:10px;    left:0px;
    }
    Parsetijd: 0.009 seconden

    Hierbij vallen twee dingen op, ten eerste dat de div#section tegen de div#header aan staat, ondanks dat we een top:10px; opgegeven hebben. Dit komt omdat de div#header ook al een top:10px; heeft, daarom zullen er bij de div#section nog 10 pixels bij moeten. Bij de div#footer moeten er dan twee keer 10 pixels bij. Het tweede dat opvalt is dat de div#aside nog steeds onder de div#section staat, hier hebben we te maken met hetzelfde probleem als het eerste punt, dus moeten we de div#aside een negatief getal toewijzen ter grootte van de hoogte van div#section, minus de eerder opgegeven top:20px;. Hier moeten we echter de randdikte van de div#section er weer bij optellen, dus komen we uit op top:-482px;. Als we dit doen komen we erachter dat de div#footer ook 482 pixels naar beneden is geplaatst, dit moeten we dan ook weer opvangen. Hierbij gebruiken we de top:30px; in plaats van top:20px; om uiteindelijk uit te komen op top:-472px;:

    Taal: CSS
    1
    23
    45
    67
    89
    1011
    1213
    1415
    1617
    1819
    2021
    2223
    2425
    2627
    28
    div#header {
        width:960px;    height:100px;
        position:relative;    top:10px;
        left:0px;}
    div#section {    width:800px;
        height:500px;    position:relative;
        top:20px;    left:0px;
    }div#aside {
        width:160px;    height:500px;
        position:relative;    top:-482px;
        left:800px;}
    div#footer {    width:960px;
        height:50px;    position:relative;
        top:-472px;    left:0px;
    }
    Parsetijd: 0.009 seconden

    Nu blijft er nog één puntje over: de div#aside staat tegen de div#section aan. Nu kunnen we de div#aside 10 pixels naar rechts verplaatsen, maar dan moet deze ook 10 pixels smaller worden om nog netjes in de pagina te passen. Het is dus makkelijker om de div#section 10 pixels smaller te maken.

    Hieronder een samenvatting van de code, hierbij heb ik meteen achtergrondkleuren aan de div's toegevoegd, zoals dit in de introductie is behandeld:

    Taal: CSS
    1
    23
    45
    67
    89
    1011
    1213
    1415
    1617
    1819
    2021
    2223
    2425
    2627
    2829
    3031
    3233
    3435
    3637
    3839
    4041
    4243
    44
    html {
        background-color:#ffffff;}
    body {    width:960px;
        margin:0px auto;}
    div {    border-width:1px;
        border-style:solid;    border-color:#000000;
    }div#header {
        width:960px;    height:100px;
        position:relative;    top:10px;
        left:0px;    background-color:#ff0000;
    }div#section {
        width:790px;    height:500px;
        position:relative;    top:20px;
        left:0px;    background-color:#0000ff;
    }div#aside {
        width:160px;    height:500px;
        position:relative;    top:-482px;
        left:800px;    background-color:#0000ff;
    }div#footer {
        width:960px;    height:50px;
        position:relative;    top:-472px;
        left:0px;    background-color:#ff0000;
    }
    Parsetijd: 0.012 seconden

    En daar hebben we de pagina zoals we die hebben willen opzetten.

    Er zijn nog vele andere manieren om elementen te positioneren of om marges te gebruiken, dit wordt echter veel te veel om uit te leggen in deze tutorial. Wellicht dat dit in de toekomst nog gaat komen. Ook zijn er nog veel meer attributen te gebruiken binnen CSS, om een lettertype aan te geven, of een lettergrootte of tekstkleur, dit zal in het volgende deel behandeld worden.

    Tot dusver hebben 69 lezers dit bericht gewaardeerd.

    Stemmen & Reacties

    Reactie



    Captcha plaatje




    Er zijn nog geen reacties op dit item. Plaats de eerste!