Archief - krijg mijn footer niet te zien onder een stretched div

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Sprits

Legacy Member
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<title>Untitled Document</title>
        <link rel="stylesheet" href="style.css" type="text/css" />
	</head>
	<body>
		<div id="container">
	    	<div id="header">
			</div>
	        <div id="content">
            	<div id="menu">
                </div>
                <div id="topimg">
                </div>
                <div id="promo">
                </div>
                <div id="insidecontent">
                </div>
	        </div>
			<div id="footer">
        	</div>
		</div>
	</body>
</html>
Code:
@charset "utf-8";
/* CSS Document */

html,body
{
	background-color:#e5e5e5;
	height: 100%;
}

body
{
	margin:0px;
    padding:0px;	
}

#container
{
   margin: auto;
   width: 766px;
}

#header
{
	background:url(images/mebis_01.jpg);
	height:128px;
	background-repeat:no-repeat;
}

#content
{
	height: 100%;	
}

#menu
{
	background-image:url(images/mebis_02.jpg);
	width:210px;
	height:171px;
	margin: 0px;
	padding: 0px;
	float:left;
}

#topimg
{
	background-image:url(images/mebis_03.jpg);
	width:556px;
	height:171px;
	margin:0px;
	padding:0px;
	float:left;
}

#promo
{
	background-image:url(images/mebis_05.jpg);
	background-repeat: repeat-y;
	width:210px;
	margin:0px;
	padding:0px;
	float:left;
	min-height:400px;
}

#insidecontent
{
	background-color:#f3f3f3;
	width:556px;
	float:left;	
	min-height:400px;
}

#footer
{
	background-image:url(images/mebis_08.jpg);
	height:43px;
}

28vzhbs.jpg


mijn footer is een oranje balk (een image, geen gewone kleur), maar ik krijg deze ni te zien.
Ik heb vroeger altijd met tabellen gewerkt en ik probeer nu over te schakelen op divs (zoals het zou moeten :p) maar helemaal heb ik het nog ni door :p
Kan er iemand mij helpen?

Zero Grav

Legacy Member
That's what floating does for you. Uw footer staat eigenlijk net onder uw header maar is onzichtbaar door hun achtergronden. Door dat ge elementen float neemt ge ze eigenlijk uit de gewone viewport en gaan andere elementen die niet gefloat zijn er niet zomaar rekening mee houden. Dat is geen bug, dat is hoe floating werkt en dat heeft even gewenning nodig.

Gemakkelijk om op te lossen met dummy elementen, die zetten zich onder gefloate elementen en zorgen dat daaropvolgende elementen zich ook gedragen zoals gij het wilt. Niet iedereen vindt dat even leuk omdat ge dan extra tags toevoegt in uw html-code die alleen voor het uiterlijk dienen. Er zijn ook andere oplossingen zoals overflow: auto meegeven of met css :after content te werken, maar ik vind deze het handigste.

Omdat ge nog maar net met divs begonnen zijt zal ik u zal zeggen dat ge een beetje last hebt van divitis (=teveel divs). Uw menu bijvoorbeeld is een lijst van menuitems, dus dat steekt ge in een <ul>, is zo afgesproken, iedereen doet het zo en 't is het meest correcte. Voor de rest kan ik nog niet helemaal zien waar het naartoe gaat, maar lege elementen zijn bijna altijd fout, zoals hier uw header.


Toevoeging van dummyspan:
Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Untitled Document</title>
        <link rel="stylesheet" href="style.css" type="text/css" />
    </head>
    <body>
        <div id="container">
            <div id="header">
            </div>
            <div id="content">
                <ul id="menu">
                </ul>
                <div id="topimg">
                </div>
                <div id="promo">
                </div>
                <div id="insidecontent">
                </div>
            </div>
            <span class="dummy"></span>
            <div id="footer">
            </div>
        </div>
    </body>
</html>
En in uw css
Code:
.dummy {
    clear: both;
    line-height: 0.1px;
    height: 0; display: block;
}

Trouwens, zeer handig zijn CSS resets. Ge plaatst CSS Reset code voor uw eigen CSS en alle elementen krijgen een standaardopmaak, onafhankelijk van de browser. Dat kan u in the long run echt énorm veel werk besparen in verband met browserverschillen. Kleine margins en paddings die niet overeen komen ofzo vallen dan meestal weg. Zie http://developer.yahoo.com/yui/3/cssreset/

Sprits

Legacy Member
bedankt voor de info
heeft weldegelijk gewerkt :)

diene cssreset ga ik is bekijken dan.

in de header div komen nog kleine vlagjes met de taal voor een switch (of te wel links or anders rechts, valt te zien waar het mooi uitkomt)

*edit*
kheb van de foto de div dan maar weggedaan en het gewoon met een img aangepakt, met dezelfde style als de div.
HTML:
<div id="content">
            	<ul id="menu">
                </ul>
                <img id="topimg" src="images/mebis_03.jpg" />
                <div id="promo">
                </div>
                <div id="insidecontent">
                </div>
	        </div>

Sprits

Legacy Member
kzit nu met een ander probleem!

Untitled Document
http://www.mebisrepairshop.be/v2/style.css

het menu is perfect in IE maar dan weer niet in FF of Chrome.

Wat doe ik verkeerd?
En ik heb ook al een tijdje aan het zoeken geweest om met rollovers te werken in CSS maar als beginner is da ni gemakkelijk ze :p ik vind genoeg info maar ik kan de link niet leggen hoe ik het laat werken met mijn website :(
iemand mss een website waar het echt deftig uitgelegd wordt?

-BVR-

Legacy Member
Het blijkt dat in FF (4.0) je 'admin' list-item deels toont (pixel of twee). In IE9 en Chrome 10 niet.

Probeer met background image te werken en dan met css sprites (en een rollover zou ook wel tof zijn en vergt niet veel werk ;))

Voorbeeld:

Css:
Code:
#menulist a span {
	position: absolute;
	top: -10000px;
}

#menulist #start {
	width: 203px;
	height: 65px;
	display: block;
	background-image: url(/files/template/bgimage.png);
	background-repeat: no-repeat;
	background-position: left top;
}

HTML:
Code:
<ul id="menulist">
	    <li><a href="/index.html" title="Start" id="start"><span>Start</span></a></li>
</ul>

Die backgroundimage is dan één afbeelding met ale je menu-items in, maar doordat je een fixed with en height geeft en je de achtergrondafbeelding zelf positioneert toon je enkel het menu-item dat nodig is.

(Om mijn voorbeeld visueel bij te staan: zieStart - De Notenbalkers ; dat menu is ook zo opgebouwd (de afbeelding die gebruikt wordt is dan deze). ZeroGrav: is niet om reclame te maken ...)

Sprits

Legacy Member
bedankt voor de info alle 2.
ik weet waarom ik derstrax er niet aan uit kon.
Ik zat in mijn hoofd met 1 item = 1 image ipv idd gewoon het hele menu als image te gebruiken.

morgen ga ik dit eens uitproberen.

Sprits

Legacy Member
ok, ik heb het in orde gekrege dankzij jullie informatie
maar ik zit nog met een probleem.
de 3de link blijft hetzelfde als de eerste link

Untitled Document

*edit
nvm, kheb de fout al gevonden, juist nog wat uitlijnen en het is in orde.
Alvast bedankt :)

Sprits

Legacy Member
nog een vraagje dan

hoe kan je het dan doen, dat als men op een button klikt en men gaat naar die pagina dat die button dan ook aangeklikt blijft? zoda je kan zien waar je zit?
moet dit dan met php?

coldvinc

Legacy Member
met php of Javascript. Al kan het ook gewoon met html als al je pagina's in html zijn en je niks dynamisch doet, een class of id tag aan de link geven dat actief moet lijken en dat dan stijlen.

-BVR-

Legacy Member
CIF, maar ik denk dat :active niet werkt met css sprites. Alwel, ik ben niet zeker. :)

Sprits

Legacy Member
nieuw probleem :p

Untitled Document

mijne 1ste kolom stretched niet gelijkmatig mee naar beneden met mijn inhoud, enkel als er tekst instaat.

en bij de inhoud krijg ik de marges niet in orde. Langs alle 4 de kanten zou er een 5 pixels marge moete komen, maar als ik dit doe, klopt de layout van mijn pagina niet meer :s

sorry voor al de vragen maar als je tabellen gewoon zijt en css enkel gebruikte als opmaak, is dit wel moeilijk :p

Sprits

Legacy Member
bedankt Zero Grav voor de link.
aan de hand daarvan heb ik ineens beide problemen kunnen oplossen :D

weer nen rep :p

Sprits

Legacy Member
coldvinc zei:
met php of Javascript. Al kan het ook gewoon met html als al je pagina's in html zijn en je niks dynamisch doet, een class of id tag aan de link geven dat actief moet lijken en dat dan stijlen.

BramVroy zei:
CIF, maar ik denk dat :active niet werkt met css sprites. Alwel, ik ben niet zeker. :)

de methode van coldvinc heeft gewerkt.
ik heb gewoon een id meegegeven aan de body maar idd zonder :active

Code:
#index #menu #linkEen{background-position: -206px 0px;}

nu nog het menu kunnen veranderen adhv de taal :s

Sprits

Legacy Member
Zero Grav zei:
'k Heb het probleem niet echt bekeken wegens tijdsgebrek, maar wellicht zijt ge op zoek naar A List Apart: Articles: Faux Columns

met da ik dit heb gedaan, zit ik terug met een probleem :p

als ik nu iets in mijn linkerkolom zet (zie Mebis Repair Shop | Home > de promoties), dan gaat alles in de rechter kolom gewoon naar beneden en da is ni de bedoeling

*edit* kheb het kunne oplossen door beide kolommen apart in een div te zetten en dan een float:left. werkt in chrome en IE maar niet meer in FF
iemand een idee hoe ik dit kan oplossen?

*edit*
bleek een caching probleem te zijn... nvm
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan