Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[CSS] Footer onderaan content, niet onderaan scherm

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb al reeds gezocht naar "footer" en aanverwante termen maar kwam veelal op topics die gingen over het plaatsen van de footer onderaan het scherm die dan vervolgens mee verschuift naar mate de content langer wordt. Dit is niet wat ik wil bereiken. Ik heb de volgende situatie. 1 container, absoluut gepositioneerd met daarin 4 blokken die ook absoluut staan. Deze 4 blokken verdelen de gehele breedte en fungeren als kolommen. Nu wil ik daaronder een footer plaatsen. Helaas kan ik nu alleen per kolom een footer neerzetten. Ik wil juist een footer die de gehele breedte van alle 4 de blokken beslaat. Hoe krijg ik dit nu voor elkaar?

Dit is wat ik nu heb. Zoals de footer nu staat werkt het niet. Hopenlijk is duidelijk wat ik bereiken wil. Mocht het probleem zijn dat er absoluut gepositioneerd wordt in de content-div. Hoe kan ik dan met relatieve positionering deze zelfde 4 kolommen handhaven?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<style> 
html, body {
margin: 0px;
padding 0px;
width:100%;
}
    
#content {
position:absolute;
width:100%;
margin:0 auto;
background: #000000;
}   

.col1{
position:absolute;
left:0px;
top:0px;
width:25%;
background: #00FF00;
}   

.col2{
position:absolute;
left:25%;
top:0px;
width:25%;
background: #00FF00;
}   

.col3{
position:absolute;
left:50%;
width:25%;
background: #00FF00;
}   

.col4{
position:absolute;
left:75%;
width:25%;
background: #00FF00;
}

.blok1{
position:relative;
left:0px;
top:0px;
width:98%;
margin:0 auto;
background: #FF0000;
}   

.blok2{
position:relative;
left:0px;
top:0px;
width:90%;
background: #FF0000;
}   

.blok3{
position:relative;
left:0px;
top:0px;
width:90%;
background: #FF0000;
}   

.blok4{
position:relative;
left:0px;
top:0px;
width:90%;
background: #FF0000;
}   


#footer{
position:relative;
width:100%;
height:50px;

}


</style>

    
<body>

<div id="content">

<div class="col1">
    <div class="blok1"></div>   
</div>
<div class="col2">
    <div class="blok1"></div>
</div>
<div class="col3">
    <div class="blok1"></div>
</div>
<div class="col4">
    <div class="blok1"></div>
</div>

</div>

<div id="footer">footer
</div>

</body>


Alvast bedankt voor de hulp!

  • ThemNuts
  • Registratie: April 2006
  • Laatst online: 26-04 16:16
Is dit niet makkelijker (en properder) met een table?

[ Voor 81% gewijzigd door ThemNuts op 29-02-2008 23:53 ]


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 20:57

crisp

Devver

Pixelated

Waarom positioneer je alles absoluut? Dat is imo nergens voor nodig: go with the flow...
ThemNuts schreef op vrijdag 29 februari 2008 @ 23:53:
Is dit niet makkelijker (en properder) met een table?
Makkelijker in eerste instantie (onderhoudbaarheid en flexibiliteit niet meegerekend)? maybe. Properder? Hell no!

Intentionally left blank


  • Fuzzillogic
  • Registratie: November 2001
  • Laatst online: 01-07 22:34
ThemNuts schreef op vrijdag 29 februari 2008 @ 23:53:
Is dit niet makkelijker (en properder) met een table?
Neen.

Maar echt, er zijn legio oplosingen te vinden voor 100%-height sites, gewoon netjes met CSS. Even zoeken dus...

  • _eXistenZ_
  • Registratie: Februari 2004
  • Laatst online: 11:59
Clear:both en 100% breedte op de footer zetten, zo uit mijn hoofd.

There is no replacement for displacement!


  • Civil
  • Registratie: Oktober 2002
  • Laatst online: 19-11 15:11
_eXistenZ_ schreef op zaterdag 01 maart 2008 @ 00:02:
Clear:both en 100% breedte op de footer zetten, zo uit mijn hoofd.
De topicstarter positioneert absoluut. Hij zal hier eerst vanaf moeten stappen voordat hij de footer netjes anderaan de content kan krijgen.

De 4 kolommen in de container zullen allemaal gefloat moeten worden, bijvoorbeeld float: left;. Je kan dan inderdaad met een simpele clear: left; de footer onder deze gefloate elementen krijgen. Onafhankelijk van welke kolom het langste is.

Verwijderd

Topicstarter
Ja ik was er al bang voor dat ik het absoluut positioneren van de blocken zou moeten laten varen. Dit gaat volgens mij gewoon niet. Het probleem van die floats is dat ik nog niet in staat ben geweest dit netjes in 4 kolommen te krijgen.

  • Muta
  • Registratie: December 2004
  • Niet online
floaten is easy, gewoon
een grote div met een breedte meegeven,
dan 3/4 divjes erin die allemaal float: left zijn, (en het liefst even lang maar hoeft niet)
en die divjes die je float allemaal een breedte meegeven, maar zorgen dat ze samen niet groter zijn dan de div waar ze inzitten(dus ook margins/paddings erbij optellen)

Verwijderd

Topicstarter
Ik heb het nu opgelost met float:left. Dit werkt nu goed. Bedankt voor alle reacties. Overigens heb ik in de floats wel een relatieve div (op 98%) staan om zo enigzins gelijke marges te krijgen links en rechts van de kolommen, want als je gewoon met margin:left/right werkt kom je nooit uit als je 4 kolommen naast elkaar van dezelfde tussenruimte wilt voorzien en tegelijkertijd de marge tussen container en de meest linker en de meest rechter kolom op 0 wilt houden. (in een liquid situatie, het werkt wel met vast afmetingen...) Als iemand hier nog een beter alternatief voor heeft hoor ik dat graag.
Pagina: 1