login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Hover effect werkt niet (Opgelost)

Offline Tomgeen - 18/12/2011 16:07 (laatste wijziging 18/12/2011 17:01)
Avatar van TomgeenLid Hallo,

Ik heb een formulier met een lijst met checkboxen gecreëerd. En nu wil ik een hover effect aan de lijst toevoegen, maar dat werkt om een of andere reden niet.

De lijst is afkomstig van een php script:

  1. <php
  2. echo '<ul>';
  3. echo '<li>' . '<input type="checkbox" name="Merk[]" value="Ford"/>' . "Ford" . '<br/>' . '</li>';
  4. echo '</ul>';
  5. ?>

de css die ik daaraan toevoeg:

  1. #wrapper ul {
  2. list-style:none;
  3. cursor: pointer;
  4.  
  5.  
  6. }
  7.  
  8. #wrapper ul li {
  9. font-size:12px;
  10. font-family:Verdana, Geneva, sans-serif;
  11. background-image:url(list%20hover%20background.JPG);
  12. background-repeat: repeat-x;
  13. color:#999;
  14. margin-left: -40px;
  15. margin-top: 0px;
  16. padding-top: 10px;
  17. height: 50px;
  18. }
  19.  
  20. #wrapper ul li:hover{
  21. font-size:12px;
  22. font-family:Verdana, Geneva, sans-serif;
  23. background-image:url(list%20background.JPG);
  24. background-repeat: repeat-x;
  25. color:#999;
  26. margin-left: -40px;
  27. margin-top: 0px;
  28. padding-top: 10px;
  29. height: 50px
  30.  
  31. }

Weet iemand hoe ik dat kan oplossen?

Bvd, Tom

15 antwoorden

Gesponsorde links
Offline WouterJ - 18/12/2011 16:41
Avatar van WouterJ HTML gevorderde - Scripts tussen code tags s.v.p.
- Lange scripts op plaatscode.be

En je code werkt gewoon: http://tinkerbin.com/MrohUhvx
Dus waarschijnlijk is de url naar de afbeelding niet goed. Je maakt sowieso 2 fouten:
1) Nooit spaties in een url gebruiken gebruik _ of - daarvoor
2) Extensies (.jpg) nooit met hoofdletters

Is het path wel berekend vanaf de stylesheet directory?
Offline Tomgeen - 18/12/2011 17:07
Avatar van Tomgeen Lid 1) ik heb de spaties veranderd naar _
2) en de (.jpg) naar kleine letters gewijzigd.
3) de .jpg bestanden staan in de zelfde map als het css document.

Het vreemde is dat hij wel de eerste afbeelding uit "#wrapper ul li { " laat zien, maar niet de afbeelding uit "#wrapper ul li:hover{".

Hoe kan dat?
Offline WouterJ - 18/12/2011 17:50
Avatar van WouterJ HTML gevorderde Heb je misschien een online voorbeeldje?
Offline Tomgeen - 18/12/2011 17:52
Avatar van Tomgeen Lid Nee helaas niet. Zou inderdaad wel makelijker zijn.
Offline WouterJ - 18/12/2011 18:06
Avatar van WouterJ HTML gevorderde Worden de andere stylen wel uitgevoerd? En kun je misschien niet even een online voorbeeldje op tinkerbin opzetten, zoals ik toenet ook heb gedaan?
Offline Tomgeen - 18/12/2011 18:20
Avatar van Tomgeen Lid Als ik tinkerbin open dan krijg ik de melding "deze site bevat fouten en werkt niet naar behoren" dus dat gaat niet lukken.

Als ik het php bestandje los open in internet explorer (dus niet require in een andere site), dan geeft hij inderdaad géén styles.

Maar als ik toch gewoon het volgende heb, dan moet hij het toch gewoon doen.

  1. <link href="test.css" rel="stylesheet" type="text/css" />
  2.  
  3. <form action="" method="GET">
  4.  
  5. <?php
  6.  
  7. echo '<ul>';
  8. echo '<li>' . '<input type="checkbox" name="Merk[]" value="Ford"/>' . "Ford" . '<br/>' . '</li>';
  9. echo '</ul>';
  10. ?>
  11.  
  12. <input type="submit" name="zoeken" value="Zoeken" />
  13.  
  14. </form>
Offline WouterJ - 18/12/2011 19:24
Avatar van WouterJ HTML gevorderde Dan gaan we naar de volgende eventuele 'oplossing'. Heb jij IE7 of lager? Zo ja, dan klopt het dat het niet werkt.

Want IE7- accepteert alleen hovers op anchor (<a>) elementen. Om dit te voorkomen kun je gebruik maken van bijv. Whatever:hover, je kunt dit verbeteren door dit in samenwerking te laten gaan met Conditional Comments, waardoor je dit script alleen voor IE7 en lager kunt laten laden.
Offline Tomgeen - 18/12/2011 19:31 (laatste wijziging 18/12/2011 19:45)
Avatar van Tomgeen Lid nee, ik heb IE-8. Dus dat is het dan ook niet.

EDIT:
Ik heb nu #wrapper weg gehaald en heb ik het volgende:

  1. ul {
  2. list-style:none;
  3. cursor: pointer;
  4. }
  5.  
  6. ul li {
  7. font-size:12px;
  8. font-family:Verdana, Geneva, sans-serif;
  9. background-image:url(list_background.jpg);
  10. background-repeat: repeat-x;
  11. color:#000;
  12. margin-left: -40px;
  13. margin-top: 0px;
  14. padding-top: 10px;e
  15. height: 50px;
  16. }
  17.  
  18. ul li: hover{
  19. font-size:12px;
  20. font-family:Verdana, Geneva, sans-serif;
  21. background-image:url(list_hover_background.jpg);
  22. background-repeat: repeat-x;
  23. color:#999;
  24. margin-left: -40px;
  25. margin-top: 0px;
  26. padding-top: 8px;
  27. height: 40px;
  28.  
  29. }

Nu geeft hij alleen de style van "ul li {" weer, maar de hover nog steeds niet.
Offline Pieter - 19/12/2011 07:57 (laatste wijziging 19/12/2011 09:49)
Avatar van Pieter Gouden medaille

SEO guru
En als je de spatie tussen li: en hover weghaalt?


Update: kan ook zijn dat je quirks modus zit, waar :hover niet werkt. Vervang even dit als je doctype:
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
Offline Tomgeen - 19/12/2011 18:49
Avatar van Tomgeen Lid Het is inderdaad de quirks modus. Nu werkt het!

Maar wat is quirks modus?
Offline Pieter - 19/12/2011 19:01
Avatar van Pieter Gouden medaille

SEO guru
Een (van de vele) IE problemen. De geschiedenis kan je hier op na lezen. 
Offline Tomgeen - 19/12/2011 19:16
Avatar van Tomgeen Lid Is het dan verstandig om dit standaard in een site op te nemen, of kan dit ook andere dingen weer verstoren?
Offline WouterJ - 19/12/2011 19:27
Avatar van WouterJ HTML gevorderde Je moet altijd een doctype op regel 1 hebben, of in elk geval <!doctype html>. Zoniet, dan gaat IE standaard in quircksmode.
Quircksmode, of hoe je dat irritante woord ook spelt, is een mode waarin IE overspringt naar een oude HTML en CSS parser. Met oud bedoel ik IE6 (of zelfs IE5.5). Hierdoor site je website er echt totaal mislukt uit. Je moet dus [u]nooit[u] proberen de Quircksmode aan te zetten en altijd voorkomen dat IE in deze mode schiet.
Offline Pieter - 19/12/2011 19:31
Avatar van Pieter Gouden medaille

SEO guru
Nope, je moet gewoon de juiste doctype leren gebruiken. Wat was je standaard doctype? En had je er nog iets voor staan? Vanaf er wat tekens voor de doctype staan, gaat IE automatisch in quirksmode.
Lees ook nog eens het volgende na:
http://en.wikipedia.org/wiki/Quirks_mode
Offline Tomgeen - 19/12/2011 19:35
Avatar van Tomgeen Lid Ik had het volgende:

<!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">

Maar ik had nog nooit van quircksmode gehoord, vandaar.
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.193s