[HTML] Firefox doet vreemd met border bij nested div?

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Wijnbo
  • Registratie: December 2002
  • Laatst online: 06-09 20:35

Wijnbo

Electronica werkt op rook.

Topicstarter
Wat ik wil: menu div moet verwijderd kunnen worden, wrapper div moet dan gehele pagnia in beslag nemen.
Nu heb ik dit an sich voor elkaar, alleen gebeurd er iets vreemds met de border van de geneste "bar" div. De content staat wel goed, maar de border loopt door tot aan het begin van de pagina :'(

Ik heb het even zo schoon mogelijk opgezet:

Weet iemand hoe ik dit fix?

HTML:
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
<html>
<head>
<style type="text/css">
body
{
    padding:0; 
    margin:0 auto;
}

#main
{
    height:100%;
    width:100%;
}

#menu
{
float: left; width: 100px; background: red;
}

#menu, #wrapper 
{   
    height: 30em; 
}

#wrapper
{
background: blue;
padding:2px;
}

#bar
{
    border: solid 1px yellow;
}
</style>
</head>

<body>
<div id="main">
    <div id="menu">
        MENU
    </div>
    <div id="wrapper">
        <div id="bar">bar</div><br />
        <div class="h">header</div><br />
        <div class="c">content</div><br />
        <div class="h">header</div><br />
        <div class="c">content</div><br />
    </div>
</div>
</body>
</html>

Acties:
  • 0 Henk 'm!

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 10-09 08:45

Bosmonster

*zucht*

Doe eens wat met:

juiste doctype
overflow: hidden

Acties:
  • 0 Henk 'm!

  • MueR
  • Registratie: Januari 2004
  • Laatst online: 12:45

MueR

Admin Tweakers Discord

is niet lief

Divs misbruiken :N Al die divs met class "h" zou je moeten vervangen door H1 t/m H6 elementen. Daarnaast hebben de breaks na een div geen nut, aangezien div een block level element is en daardoor automagisch een volledige regel in beslag neemt. Verder vindt ik het niet zo vreemd dat je lijn door de complete pagina loopt, je float die menu div namelijk over de rest heen. Dat betekent niet automatisch dat de rest van de elementen die 100 pixels als margin aanneemt.

Anyone who gets in between me and my morning coffee should be insecure.


Acties:
  • 0 Henk 'm!

  • RM-rf
  • Registratie: September 2000
  • Laatst online: 15:19

RM-rf

1 2 3 4 5 7 6 8 9

volgens mij ligt het probleem vooral aan het 'misbruik' van de float om 'tabel-achtige structuren te creeeren:
wat ook meerdere problemen kan geven (rondom het 'opheffen' van deze floats, danwel het 'uitbreken' van float uit hun container-elementen; en nog een ergerlijke hoeveelheid float-bugs in IE en zelfs enkele in Opera, die verschrikkelijke resultaten kunnen geven; zie ook http://positioniseverything.net/explorer/floatmodel.html)

het 'floaten' heeft een 'eigen' omgang met positionering en deze dient juist de marghin, paddings en borders van omliggende blocklevel elementen _niet_ te beinvloedden:
http://reference.sitepoint.com/css/floatclear

display: inline-block, óf zelfs display: table-cell zouden imho een betere oplossing zijn (eventueel kan dit wel problemen geven qua 'backwards compatibnility, alhoewel het igv van IE juist een 'geluk-bij-een-ongeluk' is dat de 'display-inline daar dusdanig fout is omgezet dat dit feitelijk het 'CSS2-voorstel' voor 'display: inline-block' leverde)

[ Voor 23% gewijzigd door RM-rf op 17-02-2010 10:02 ]

Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen