Ik ben onlangs begonnen met het maken van een nieuwe site op basis van layers. Dit ging in eerste instantie goed totdat ik een padding ging opgeven. In IE maakte de padding deel uit van de breedte en hoogte van de layers dus hier geen problemen. In FF echter wordt de padding bij de opgegeven breedte en hoogte bijgeteld wat bijgevolg m'n hele layout overhoop haalde. Op dat moment gebruikte ik het volgende doctype (die door Dreamweaver MX standaard wordt ingevoegd):
code:
1
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> |
Daarom besloot ik wat onderzoek te verrichten en vond ik volgende code die in de CSS moet worden toegevoegd:
code:
1
2
3
4
5
| *
{
box-sizing: content-box;
-moz-box-sizing: content-box;
} |
Deze loste het probleem idd wel op in FF maar is, als ik me niet vergis, een CSS3 specificatie en dus weinig crossbrowser vriendelijk.
Toen vond ik een andere oplossing in de vorm van volgende doctype:
code:
1
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
Door deze aanpassing ging mijn site er in IE dan net zo uitzien als in FF in het begin. Dan restte mij enkel de padding van de breedten en hoogten af te trekken en klaar is kees

.
Nu vroeg ik mij dus af of deze laatste oplossing dan wel effectief crossbrowser vriendelijk is. Ik heb heel wat topics hier gelezen en het web afgeschuimd maar zo kwam ik soms tegenstrijdige beweringen tegen en vervolgens raakte ik het helemaal kwijt

. Als deze oplossing idd niet crossbrowser vriendelijk is, dan had ik van jullie graag betere oplossingen gehoord. Ik hecht in dit geval vrij veel belang aan het crossbrowser niveau dus helemaal volgens de standaarden van W3C hoeft het dus niet te zijn (maar hoe dichter bij de standaarden, hoe beter natuurlijk

). Ik zal ter volledigheid ook nog ff mijn HTML en CSS code meegeven:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Titel</title>
<META HTTP-EQUIV="imagetoolbar" CONTENT="no">
<link rel="stylesheet" type="text/css" href="Stylesheets/style.css">
</head>
<body style="text-align: center">
<div id="layerContainer">
<div id="layerHeader"> content </div>
<div id="layerWelcome"> content </div>
<div id="layerLeft"> content </div>
<div id="layerRight"> content </div>
</div>
</body> |
Cascading Stylesheet:
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
| body
{
margin: 0px;
padding: 0px;
font-family: Tahoma;
font-size: 8pt;
scrollbar-arrow-color : white;
scrollbar-face-color : #603A3A;
scrollbar-3dlight-color : white;
scrollbar-highlight-color : #603A3A;
scrollbar-shadow-color : #603A3A;
scrollbar-darkshadow-color : black;
scrollbar-track-color : #603A3A;
background-image: url(../Images/Background.jpg);
background-attachment: fixed;
background-repeat: repeat;
}
p#titleWelcome
{
display: inline;
font-size: medium;
font-weight: bold;
color: #47603A;
}
div#layerContainer
{
text-align: center;
position: relative;
margin-left: auto;
margin-right: auto;
width: 780px;
height: 100%;
}
div#layerHeader
{
width: 780px;
height: 529px;
background-image: url(../Images/Header.jpg);
}
div#layerWelcome
{
width: 780px;
background-color: #FFFFFF;
}
div#layerLeft
{
float: left;
text-align: left;
width: 160px;
height: 360px;
background-color: #FFFFFF;
padding: 20px;
}
div#layerRight
{
float: right;
text-align: left;
width: 540px;
height: 540px;
background-color: #EEEEEE;
padding: 20px;
} |