Ik ben bezig met de laatste loodjes van de nieuwe versie van m'n website en zit met nog één dingetje dat me maar dwars zit. Om het een en ander te illustreren eerst een screenie met wat hulplijntjes.

Je ziet:
* Dunne rode lijn = DIV MainWrapper
* Dikke rode lijn = DIV NewTopSection
* Dunne groene lijn = 4x DIV wrap tile
* Dunne blauwe lijn = 4x DIV tile
Doel: een mooi mouse-over menuutje op basis van CSS, met dank aan dit artikel. Ik had wel een paar keer lezen nodig om't helemaal te bevatten, maar op zich is het best een nette oplossing.
Probleem: de vier gestapelde DIVs "wrap tile" (groene lijn) weigeren om te centreren, ongeacht wat ik allemaal probeer.
Ik heb geprobeerd:
* DIV wrap tile: margin-left en margin-right op auto
* DIV wrap tile: margin op "0px auto"
* DIV wrap tile: align op center
* DIV NewTopSection: text-align op center
In elke browser, behalve Internet Explorer blijft het stapeltje helemaal links in NewTopSection plakken. Grappig genoeg pakt IE het hele stapeltje en schuift het een halve schermbreedte naar rechts, waarbij de helft dus -buiten- NewTopSection valt. De enige manier om dit te voorkomen is door "left: 0px" op te geven voor "wrap tile", maar dan centreert ie natuurlijk niet.
Er is wel één manier waarop de vier "wrap tile" DIVs centreren! Door "position: relative" aan te zetten. Het jammere is dan natuurlijk dat ze onder elkaar verschijnen in plaats van bovenop elkaar.
Helaas ben ik geen CSS ster en moet ik het vooral hebben van voorbeelden. Ik heb echter elke mogelijkheid geprobeerd die ik tegenkwam over het centreren van DIVs in een DIV. Helaas zonder weinig sjoege. Heeft er iemand nog een lumineus idee?
De bijbehorende CSS
En de uiteindelijke HTML
EDIT: Goddank wordt die HTML code automatisch gegenereerd door m'n PHP code! Ik moet er niet aan denken dat met de hand steeds aan te moeten passen

Je ziet:
* Dunne rode lijn = DIV MainWrapper
* Dikke rode lijn = DIV NewTopSection
* Dunne groene lijn = 4x DIV wrap tile
* Dunne blauwe lijn = 4x DIV tile
Doel: een mooi mouse-over menuutje op basis van CSS, met dank aan dit artikel. Ik had wel een paar keer lezen nodig om't helemaal te bevatten, maar op zich is het best een nette oplossing.
Probleem: de vier gestapelde DIVs "wrap tile" (groene lijn) weigeren om te centreren, ongeacht wat ik allemaal probeer.
Ik heb geprobeerd:
* DIV wrap tile: margin-left en margin-right op auto
* DIV wrap tile: margin op "0px auto"
* DIV wrap tile: align op center
* DIV NewTopSection: text-align op center
In elke browser, behalve Internet Explorer blijft het stapeltje helemaal links in NewTopSection plakken. Grappig genoeg pakt IE het hele stapeltje en schuift het een halve schermbreedte naar rechts, waarbij de helft dus -buiten- NewTopSection valt. De enige manier om dit te voorkomen is door "left: 0px" op te geven voor "wrap tile", maar dan centreert ie natuurlijk niet.
Er is wel één manier waarop de vier "wrap tile" DIVs centreren! Door "position: relative" aan te zetten. Het jammere is dan natuurlijk dat ze onder elkaar verschijnen in plaats van bovenop elkaar.
Helaas ben ik geen CSS ster en moet ik het vooral hebben van voorbeelden. Ik heb echter elke mogelijkheid geprobeerd die ik tegenkwam over het centreren van DIVs in een DIV. Helaas zonder weinig sjoege. Heeft er iemand nog een lumineus idee?
De bijbehorende CSS
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
| #MainWrapper { position: absolute; left: 250px; top: 150px; right: 50px; min-width: 720px; margin-bottom: 100px; z-index: 2; border: 1px solid red; } #NewTopSection { text-align: center; height: 100px; margin-bottom: 20px; border: 2px solid red; } .tile { position: absolute; border: 0px solid black; width: 180px; height: 50px; background: transparent; border: 1px solid blue; } .wrap { width: 720px; height: 100px; background: transparent; left: 0px; margin-left: auto; margin-right: auto; border: 1px solid green; } .content { display: none; margin-top: 50px; border: 1px solid blue; } .wrap:hover .tile { background: transparent } #a { left: 0px; } #b { left: 180px; } #c { left: 360px; } #d { left: 540px; } #a, #b, #c, #d { z-index: 3; } #z:hover, #x:hover, #y:hover, #w:hover { z-index: 2; } #z:hover .content, #x:hover .content, #y:hover .content, #w:hover .content { display: block; } |
En de uiteindelijke HTML
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
| <div id="MainWrapper"> <div id="NewTopSection" align="center"> <div class="wrap tile" id="z"> <div class="tile" id="a"><img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-blog.png" alt="Blog"></img></div> <span class="content"> <a href="http://www.kilala.dreamhosters.com/"> <img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-frontpage.png" alt="Front page"></img> </a> <a href="http://www.kilala.dreamhosters.com/index.php?tag=baby"> <img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-dana.png" alt="Dana"></img> </a> </span> </div> <div class="wrap tile" id="y"> <div class="tile" id="b"><img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-work.png" alt="Work"></img></div> <span class="content"> <a href="http://www.kilala.dreamhosters.com/Sysadmin"> <img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-sysadmin.png" alt="Sysadmin"></img> </a> <a href="http://www.kilala.dreamhosters.com/Apple"> <img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-apple.png" alt="Apple"></img> </a> <a href="http://www.kilala.dreamhosters.com/School"> <img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-school.png" alt="School"></img> </a> </span> </div> <div class="wrap tile" id="x"> <div class="tile" id="c"><img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-play.png" alt="Play"></img></div> <span class="content"> <a href="http://www.kilala.dreamhosters.com/Manga-Anime"> <img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-japan.png" alt="Japan"></img> </a> <a href="http://www.kilala.dreamhosters.com/Comics"> <img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-comics.png" alt="Comics"></img> </a> <a href="http://www.kilala.dreamhosters.com/Steampunk"> <img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-steampunk.png" alt="Steampunk"></img> </a> </span> </div> <div class="wrap tile" id="w"> <div class="tile" id="d"><img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-about.png" alt="About"></img></div> <span class="content"> <a href="http://www.kilala.dreamhosters.com/Cailin"> <img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-cailin.png" alt="Cailin"></img> </a> <a href="http://www.kilala.dreamhosters.com/Marli"> <img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-marli.png" alt="Marli"></img> </a> <a href="http://www.kilala.dreamhosters.com/Cailin/index.php?id=777"> <img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-contact.png" alt="Contact"></img> </a> <a href="http://www.kilala.dreamhosters.com/This-site"> <img src="http://www.kilala.dreamhosters.com/Images/Logos/BUT-thissite.png" alt="This site"></img> </a> </span> </div> </div> // NewTopSection </div> // MainWrapper |
EDIT: Goddank wordt die HTML code automatisch gegenereerd door m'n PHP code! Ik moet er niet aan denken dat met de hand steeds aan te moeten passen
Liege, liege, liegebeest!