IE en Safari verschillen (Opgelost)
21 antwoorden
Gesponsorde links
WouterJ - 15/04/2010 13:28
HTML gevorderde
Misschien dat het ligt aan de vele fouten in CSS en HTML:
HTML
CSS
WimJ - 15/04/2010 13:32
Grafische gevorderde
Waldio schreef:
Misschien dat het ligt aan de vele fouten in CSS en HTML:
HTML
CSS
Zou eerder zeggen, het niet gebruiken van IE Hacks
radiofreak - 15/04/2010 13:56 (laatste wijziging 15/04/2010 17:37)
Nieuw lid
Het probleem met de menu is opgelost. Heb heel de site laten checken door de W3C validator en er zijn geen errors meer. Toch blijf ik een verschil tussen IE en Safari zien.
Bij Safari werken de mouseovers perfect, in Internet Explorer zijn er geen mouseovers meer.
http://www.apropeau.net/muzzic/index.html
denniseik - 15/04/2010 17:40
Lid
Waarom gebruik je niet gewoon het hover-effect in css.
Je kan bijvoorbeeld je menu opdelen in div's, vervolgens de images als achtergrond en bij hover een ander achtergrond image tonen. Voor het klikeffect gebruik je cursor: pointer.
radiofreak - 15/04/2010 17:47
Nieuw lid
Mag ik de code van de menu eens doorsturen? Ben niet zo'n held in Mouse-over in CSS.
WouterJ - 15/04/2010 20:12 (laatste wijziging 15/04/2010 20:12)
HTML gevorderde
Ik zal je wel wat helpen met CSS:hover, maar de rest moet je toch wel zelf doen:
Stap 1: De menu opdelen in classes
Eerst maken we een menu met lijsten, en laten elk lijst item left floaten zodat ze naast elkaar staan en we geven een width:
li {
float: left;
width: 100px;
}
li {
float : left ;
width : 100px ;
}
<div id="menu">
<ul>
<li class="home"><a href="/"></a></li>
<li class="nieuws"><a href="/nieuws.html"></a></li>
<li class="contact"><a href="/contact.html"></a></li>
</ul>
<li class = "home" ><a href = "/" ></ a ></ li > <li class = "nieuws" ><a href = "/nieuws.html" ></ a ></ li > <li class = "contact" ><a href = "/contact.html" ></ a ></ li >
Stap 2: Aan de classes background-image toevoegen
.home{
background-image: url(/images/home.png);
background-repeat: no-repeat;
}
.nieuws{
background-image: url(images/home.png);
background-repeat: no-repeat;
}
.contact{
background-image: url(images/contact.png);
background-repeat: no-repeat;
}
.home{
background-image : url ( /images/home.png ) ;
background-repeat : no-repeat ;
}
.nieuws{
background-image : url ( images/home.png ) ;
background-repeat : no-repeat ;
}
.contact{
background-image : url ( images/contact.png ) ;
background-repeat : no-repeat ;
}
Stap 3: De :hover effecten maken voor de classes
.home:hover {
background-image: url(images/homehover.png);
background-repeat: no-repeat;
}
.nieuws:hover {
background-image: url(images/nieuwshover.png);
background-repeat: no-repeat;
}
.contact:hover {
background-image: url(images/contacthover.png);
background-repeat: no-repeat;
}
.home :hover {
background-image : url ( images/homehover.png ) ;
background-repeat : no-repeat ;
}
.nieuws :hover {
background-image : url ( images/nieuwshover.png ) ;
background-repeat : no-repeat ;
}
.contact :hover {
background-image : url ( images/contacthover.png ) ;
background-repeat : no-repeat ;
}
Stap 4: De hele code
li {
float: left;
width: 100px;
}
.home{
background-image: url(/images/home.png);
background-repeat: no-repeat;
}
.nieuws{
background-image: url(images/home.png);
background-repeat: no-repeat;
}
.contact{
background-image: url(images/contact.png);
background-repeat: no-repeat;
}
.home:hover {
background-image: url(images/homehover.png);
background-repeat: no-repeat;
}
.nieuws:hover {
background-image: url(images/nieuwshover.png);
background-repeat: no-repeat;
}
.contact:hover {
background-image: url(images/contacthover.png);
background-repeat: no-repeat;
}
li {
float : left ;
width : 100px ;
}
.home{
background-image : url ( /images/home.png ) ;
background-repeat : no-repeat ;
}
.nieuws{
background-image : url ( images/home.png ) ;
background-repeat : no-repeat ;
}
.contact{
background-image : url ( images/contact.png ) ;
background-repeat : no-repeat ;
}
.home :hover {
background-image : url ( images/homehover.png ) ;
background-repeat : no-repeat ;
}
.nieuws :hover {
background-image : url ( images/nieuwshover.png ) ;
background-repeat : no-repeat ;
}
.contact :hover {
background-image : url ( images/contacthover.png ) ;
background-repeat : no-repeat ;
}
<div id="menu">
<ul>
<li class="home"><a href="/"></a></li>
<li class="nieuws"><a href="/nieuws.html"></a></li>
<li class="contact"><a href="/contact.html"></a></li>
</ul>
<li class = "home" ><a href = "/" ></ a ></ li > <li class = "nieuws" ><a href = "/nieuws.html" ></ a ></ li > <li class = "contact" ><a href = "/contact.html" ></ a ></ li >
Als het goed is moet je nu met :hover de afbeelding veranderen.
Succes!
Bedankt door: radiofreak
radiofreak - 16/04/2010 10:20
Nieuw lid
Eerst en vooral bedankt dat u mij wilt helpen...
De code ziet er goed uit, ik heb ze net uitgeprobeerd, maar het lijkt toch dat ik iets verkeerd doe, ik heb de pagina online gezet:
http://apropeau.net/muzzic/cssmenu.html
genkstar - 16/04/2010 11:09
Nieuw lid
Je moet een hoogte en een breedtje instellen bij elke image
en bij li css
kan je zetten margin-left:10px;
radiofreak - 16/04/2010 12:05
Nieuw lid
Perfect, werkt zoals het moet... Nu zouden de buttons enkel nog gecentreerd moeten staan in de menu. Heb al eens geprobeerd met text-align: center;, maar helaas geen resultaat.
Martijn - 16/04/2010 12:22 (laatste wijziging 16/04/2010 12:22)
Crew PHP
even een kortere versie:
.home{background: url('images/home.png') no-repeat;}
.home:hover {background: url('images/homehover.png') no-repeat;}
.home { background : url ( 'images/home.png' ) no-repeat ; }
.home :hover { background : url ( 'images/homehover.png' ) no-repeat ; }
scheelt in je css bestand weer, en is overzichtelijker, en omdat t kleiner is laad je site iets sneller ;)
edit: En wel netjes quotes in je url() zetten ;)
Bedankt door: radiofreak
Mikee - 16/04/2010 13:27
Nieuw lid
Dat het sneller laat ben ik het mee eens maar overzichtelijker word het niet als je grote stylesheets hebt.
En die quotes in je url() => url('') waarom doe je dat als ik vragen mag?
Martijn - 16/04/2010 13:39 (laatste wijziging 16/04/2010 13:41)
Crew PHP
Vind je dit:
.home{
background-image: url(/images/home.png);
background-repeat: no-repeat;
}
.nieuws{
background-image: url(images/home.png);
background-repeat: no-repeat;
}
.contact{
background-image: url(images/contact.png);
background-repeat: no-repeat;
}
.home:hover {
background-image: url(images/homehover.png);
background-repeat: no-repeat;
}
.nieuws:hover {
background-image: url(images/nieuwshover.png);
background-repeat: no-repeat;
}
.contact:hover {
background-image: url(images/contacthover.png);
background-repeat: no-repeat;
}
}
.home{
background-image : url ( /images/home.png ) ;
background-repeat : no-repeat ;
}
.nieuws{
background-image : url ( images/home.png ) ;
background-repeat : no-repeat ;
}
.contact{
background-image : url ( images/contact.png ) ;
background-repeat : no-repeat ;
}
.home :hover {
background-image : url ( images/homehover.png ) ;
background-repeat : no-repeat ;
}
.nieuws :hover {
background-image : url ( images/nieuwshover.png ) ;
background-repeat : no-repeat ;
}
.contact :hover {
background-image : url ( images/contacthover.png ) ;
background-repeat : no-repeat ;
}
}
Overzichtelijker dan:
.home {background: url('images/home.png') no-repeat;}
.nieuws {background: url('images/home.png') no-repeat;}
.contact{background: url('images/contact.png') no-repeat;}
.home:hover {background: url('images/homehover.png'); no-repeat;}
.nieuws:hover {background: url('images/nieuwshover.png') no-repeat;}
.contact:hover {background: url('images/contacthover.png') no-repeat;}
.home { background : url ( 'images/home.png' ) no-repeat ; }
.nieuws { background : url ( 'images/home.png' ) no-repeat ; }
.contact { background : url ( 'images/contact.png' ) no-repeat ; }
.home :hover { background : url ( 'images/homehover.png' ) ; no-repeat ; }
.nieuws :hover { background : url ( 'images/nieuwshover.png' ) no-repeat ; }
.contact :hover { background : url ( 'images/contacthover.png' ) no-repeat ; }
??
anyway, de quotes zijn gewoon een goede gewoonte. Mocht je om 1 of andere vage reden een bestandsnaam met een spatie hebben, blijft alles goed werken. NIet alleen hier in de url(), maar gewoon overal.
genkstar - 16/04/2010 14:29
Nieuw lid
Je hebt geen
background:url('imgpath');
staan bij de verschillende stijl-classes.
radiofreak - 16/04/2010 14:33
Nieuw lid
Klopt, nu is het inorde... Iemand een idee hoe ik alles mooi kan centreren?
genkstar - 16/04/2010 14:41 (laatste wijziging 16/04/2010 14:48)
Nieuw lid
maak een div en geeft de attribute class de waarde menulist
.menulist {width:800px; margin-left:auto; margin-right:auto;}
zoiets endan zal het gecentreerd moete zijn
Je hebt ook JavaScript fouten waardoor je waarschijnlijk gecached informatie gaat ophalen..
var cacheBuster = "?t=" + Date.parse(new Date());
ergens in't begin staat dit.
var random : Math.floor(Math.random() * 999999999999);
var cacheBuster = "?t=" + random;
Zo kan je wel caching tegen gaan
Bedankt door: radiofreak
WouterJ - 16/04/2010 15:08
HTML gevorderde
Dat klopt. Dan moet je wat meer dingen aanpassen met CSS.
Ik zal het je wel even uitleggen. Ik ga verder op de code in post 6.
Stap 1: Eerst de link een naam geven en in een span zetten
<div id="menu">
<ul>
<li class="home"><a href="/"><span>Home</span></a></li>
<li class="nieuws"><a href="nieuws.html"><span>Nieuws</span></a></li>
<li class="contact"><a href="contact.html"><span>Contact</span></a></li>
</ul>
<li class = "contact" ><a href = "contact.html" ><span > Contact
</ span ></ a ></ li >
Stap 2: De span laten verdwijnen
Stap 3: Van de link een blok maken die evengroot is als het plaatje
a{
display: block;
width: 100px;
height: 50px;
}
a{
display : block ;
width : 100px ;
height : 50px ;
}
Stap 4: De hele code
span{
display: none;
}
a{
display: block;
width: 100px;
height: 50px;
}
span{
display : none ;
}
a{
display : block ;
width : 100px ;
height : 50px ;
}
<div id="menu">
<ul>
<li class="home"><a href="/"><span>Home</span></a></li>
<li class="nieuws"><a href="nieuws.html"><span>Nieuws</span></a></li>
<li class="contact"><a href="contact.html"><span>Contact</span></a></li>
</ul>
<li class = "contact" ><a href = "contact.html" ><span > Contact
</ span ></ a ></ li >
Als het goed is moet de link nu werken.
Succes
radiofreak - 16/04/2010 15:21 (laatste wijziging 16/04/2010 23:03)
Nieuw lid
Ja, dit is de oplossing, allemaal heel erg bedankt!
Ik weet dat ik blijf afkomen met vragen, maar ik denk dat dit de laatste vraag is aangezien mijn menu er volledig staat. Bovenaan staat er nowplaying met daaronder een iframe.
Nu verschuift die iframe telkens als ik van pagina verander, terwijl op elke pagina "style.css" wordt toegepast. Switch maar eens tussen Home en Nieuws...
http://www.apropeau.net/muzzic/index.html
kiwi - 16/04/2010 23:54 (laatste wijziging 16/04/2010 23:56)
Nieuw lid
Dit komt omdat er niet hetzelfde staat:
Home
<div id="beluister"><p class="tunein"><a href="http://www.apropeau.net/luisterdanceup" target="_blank"></a></p></div>
<a href="index.html" target="_blank"></a>
<div id="nowplaying"><iframe src="http://www.apropeau.net/nowplaying/nowplaying%20website.php" name="nowplaying" width="400" height="45" scrolling="no" frameborder="0"></iframe></div>
</div>
< div id= "beluister" >< p class = "tunein" >< a href= "http://www.apropeau.net/luisterdanceup" target= "_blank" ></ a></ p></ div>
< a href= "index.html" target= "_blank" ></ a>
< div id= "nowplaying" >< iframe src= "http://www.apropeau.net/nowplaying/nowplaying%20website.php" name= "nowplaying" width= "400" height= "45" scrolling= "no" frameborder= "0" ></ iframe></ div>
</ div>
Nieuws
<div id="beluister"><a href="http://www.apropeau.net/luisterdanceup" target="_blank"><img src="images/tunein.png" alt="tunein"></a></div>
<a href="index.html" onMouseOver="document.mouseover6.src=tuneinover.src" onMouseOut="document.mouseover6.src=tunein.src" target="_blank"></a>
<div id="nowplaying"><iframe src="http://www.apropeau.net/nowplaying/nowplaying%20website.php" name="nowplaying" width="400" height="45" scrolling="no" frameborder="0"></iframe></div>
</div>
< div id= "beluister" >< a href= "http://www.apropeau.net/luisterdanceup" target= "_blank" >< img src= "images/tunein.png" alt= "tunein" ></ a></ div>
< a href= "index.html" onMouseOver= "document.mouseover6.src=tuneinover.src" onMouseOut= "document.mouseover6.src=tunein.src" target= "_blank" ></ a>
< div id= "nowplaying" >< iframe src= "http://www.apropeau.net/nowplaying/nowplaying%20website.php" name= "nowplaying" width= "400" height= "45" scrolling= "no" frameborder= "0" ></ iframe></ div>
</ div>
mss eens de "<p class="tunein"> ... </p> " bij de andere toevoegen?
en die andere zaken
Gesponsorde links
Dit onderwerp is gesloten .