:hover efekten i CSS flimrer første gang man fører musen hen over
menuen. Det lader til at den ikke preloader baggrundene fra.
Hvorfor preloades de billeder ikke?
Med venlig hilsen
Lars Hoffmann
Jeg har nu løst problemet. Jeg preloader nu hover baggrunden i den
container hvor mine links ligger i og det virker.
> hover efekten i CSS flimrer første gang man fører
> musen hen over menuen. Det lader til at den ikke
> preloader baggrundene fra.
>
> Hvorfor preloades de billeder ikke?
Det er ret enkelt at preloade billeder til senere brug, se
men i IE, i hvert fald i version 6, kan det godt flimre en
del - i IE7 går den meget bedre.
--
Allan Vebel
http://html-faq.dk
--
www.mXchange.dk - køb og sælg brugte mobiler
Kender jeg godt, men det virkede ikke. Jeg tror at cache
konfigureringen på serveren ikke tillader at cache billeder på denne
måde. Under alle omstændigheder har jeg løst problemet.
> Det ser fint ud hos mig (Firefox og Mozilla på Linux), men du har måske
> selv fået kringlet det??..
Jepper, Løsningen var ikke helt så simpel som jeg kunne have ønsket
mig, men det virker da i det mindste:
Min menu ser sådanher ud:
<ul class="content">
<li id="Level1aSelected">Home</li>
<li id="Level1bNotSelected"><a href="#">News</a></li>
<li id="Level1cNotSelected"><a href="#">Custom packaging</a></li>
<li id="Level1dNotSelected"><a href="#">Standard packaging</a></li>
<li id="Level1eNotSelected"><a href="#">Multimedia</a></li>
<li id="Level1fNotSelected"><a href="#">About EDP</a></li>
<li id="Level1gNotSelected"><a href="#">Contact</a></li>
</ul>
og for hvert element i menuen har jeg noget CSS der svarer til:
#Level1bNotSelected a
{
display:block;
text-align: center;
padding-top:5px;
height:43px;
width:97px;
background-image:URL('../../Edp/images/two-off.gif');
color:#FFFFFF;
text-decoration: none;
}
#Level1bNotSelected
{
background-image:URL('../../Edp/images/two-on.gif');
}
#Level1bNotSelected a:hover, #Level1bNotSelected a:focus
{
background-image:URL('../../Edp/images/two-on.gif');
}
Det vil sige at jeg loader baggrunden ind i <li> elementet, og på den
åde undgås flimren.
>On Jun 19, 7:57 am, Morten Vadskær <vadsk...@gmail.com> wrote:
>
>> Det ser fint ud hos mig (Firefox og Mozilla på Linux), men du har måske
>> selv fået kringlet det??..
>
>
>Jepper, Løsningen var ikke helt så simpel som jeg kunne have ønsket
>mig, men det virker da i det mindste:
>
>Min menu ser sådanher ud:
><ul class="content">
> <li id="Level1aSelected">Home</li>
> <li id="Level1bNotSelected"><a href="#">News</a></li>
> <li id="Level1cNotSelected"><a href="#">Custom packaging</a></li>
> <li id="Level1dNotSelected"><a href="#">Standard packaging</a></li>
> <li id="Level1eNotSelected"><a href="#">Multimedia</a></li>
> <li id="Level1fNotSelected"><a href="#">About EDP</a></li>
> <li id="Level1gNotSelected"><a href="#">Contact</a></li>
></ul>
>
>og for hvert element i menuen har jeg noget CSS der svarer til:
Det giver en noget kompleks CSS.
Ville det ikke være nemmere at bruge:
<li id="level1a" class="selected">
<li id="level1b" class="notselected">
osv.
- ?
Det er lidt noget "snask" at skifte id afhængig af elementets "state".
Mvh. Jørn
--
Jørn Andersen,
Brønshøj
> Det er lidt noget "snask" at skifte id afhængig af elementets "state".
mjaeh det kan jeg måske nok, men jeg syntes ikke der er den store
fordel (eller ulempe) ved nogen af metoderne.
Nu jeg tænker over det, kan jeg ikke se hvordan jeg skulle kunne gøre
det uden at sætte et id for hvert state.
Hvordan kan jeg i min CSS fil referere til <li id="level1a"
class="selected"> uden at referere til <li id="level1a"
class="notselected"> ?
> Jeg tror at cache
> konfigureringen på serveren ikke tillader at cache billeder på denne
> måde.
Caching af billeder sker da ikke på serveren. Det er brugerens browser, som
af hjemmesiden instrueres om at hente og lagre billederne indtil de skal
bruges.
--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk/ - http://ginnerskov.dk/
http://html-faq.dk
>> Det er lidt noget "snask" at skifte id afhængig af elementets "state".
Det er mig der har sovet i timen. Jeg havde overset, at du også ville
skifte baggrundsbillede og ikke kun farve.
>Nu jeg tænker over det, kan jeg ikke se hvordan jeg skulle kunne gøre
>det uden at sætte et id for hvert state.
>
>Hvordan kan jeg i min CSS fil referere til <li id="level1a"
>class="selected"> uden at referere til <li id="level1a"
>class="notselected"> ?
#level1a.selected { ... }
#level1a.notselected { ... }
- burde vel virke? Men om det er smart i dit tilfælde er nok tvivlsomt.
Min tanke var bare, at det ville hjælpe på overksueligheden at lægge
fælles-egenskaberne for sig og de ting, der skiftede for sig ...
Nej, men det er stadig serveren der fortæller browseren expire tiden
på de ting der bliver cached og hvis den er sat til at expire med det
samme, cacher browseren jo ikke billeder.
> #level1a.selected { ... }
> #level1a.notselected { ... }
> - burde vel virke? Men om det er smart i dit tilfælde er nok tvivlsomt.
Jeg vil da prøve det, jeg kendte ikke til denne notering
> Min tanke var bare, at det ville hjælpe på overksueligheden at lægge
> fælles-egenskaberne for sig og de ting, der skiftede for sig ...
Ja det kan jeg godt se logikken i.
Med venlig hilsen
Lars Hoffman
Nej, men det er stadig serveren der fortæller browseren expire tiden
på de ting der bliver cached og hvis den er sat til at expire med det
samme,
Mig bekendt kan serveren ikke sætte expire på andet end serversidegenererede
cookies. En webside kan sætte expire på sig selv - men det sker på klienten,
ikke på serveren.
> Mig bekendt kan serveren ikke sætte expire på andet end serversidegenererede
> cookies. En webside kan sætte expire på sig selv - men det sker på klienten,
> ikke på serveren.
Severen sætter http header med cache og expire informationer, dem der
svarer til html tagget <meta http-equiv="cache-control"> og <meta
http-equiv="expires">. browseren vil så cache alt efter hvad disse
angiver.