30. november 2008 - 15:56Der er
21 kommentarer og 2 løsninger
Problem med a:visited. Link springer op, ændre menu's højde
Hej.
Jeg har på det seneste haft meget fokus på et design jeg har lavet. Nu hvor næsten alt er på plads, skulle jeg lige have resten med, og jeg opdager så at det menu-problem som jeg tidligere ikke var noget problem, er et problem.
Når man ser på menu'en ser den helt perfekt ud, indtil man klikker på et af linksne. Ved at gøre dette, sprænger linket en linie op i menuen, hvilket gør menuen lige pludselig bliver højere, og så har det link du trykkede på, på egen linie.
Problemet må jo blive forårsaget af a:visited af en eller anden grund, måske det har en "dybere" grund og har noget at gøre med selve menuen egenskaber.
Efter at linket så er sprunget op en linie over, så forbliver linket der, lige meget om du opdater, genstarter browseren. Men vælger du så at slette oversigten (Så linket ikke er visited) så er menuen på plads igen.
Nogle der tror de kan hjælpe? Jeg smider lige CSS koderne.
Det er ikke nemt at se udfra det du giver, da det kunne være noget andet som gør at det se ud som du beskriver, et link ville være nemmere at se fejlen udfra.
Men prøv at sætte dette ind i din #menu a:link, a:visited { height: 20px; display: block;
Det skyldes garanteret, at du gør de besøgte links 100px bredere med padding i siderne. Så er der vel ikke noget at sige til, der er noget, som lander på næste linje.
Derudover er det ret tilfældigt, om nogen kan gætte, hvad der sker, og hvad du skal gøre for at undgå det, når vi ikke kan se koden ;o)
udfra det du har lagt, virker det da ok hvis du flytter a:visited op som har i dit første eksempel, jeg kan ikke se den hopper en linje op, også selvom jeg sletter alt fra browsere og åbner siden igen.
Jeg kan kun se at dit input felt er højre end den menu.
Zips -> Her i designet, så hopper linket et linie op når man klikker på det så det bliver visited. Det hopper så ned igen, hvis man sletter oversigten, så det IKKE er visited mere... Det med input feltet skal du ikke tage dig af, det er blot fordi CSS'en ikke er med osv.
Olebole -> Der er jo ingen forskel på det der, og det jeg startede med og poste sådan set, og det virker desværre heller ikke =(
Lækkert du har smidt det online, da jeg kun sidder og tester offline. Linknes adresser er sat til '#' prøv lige at ændre dem til 'link1.php' 'link2.php' osv. Ligemeget at siden ikke eksisterer. Så vil jeg kigge igen =D
Det var da godt nok mærkeligt. Det virker som det skal på din side, og også ved mig, hvis jeg bare kopier kildekoden fra din side. Men prøver at jeg at gøre det gennem CSS filen, så gider den sgu ik. Jeg prøver lige at kigge nærmere...
Ja, så fandt jeg fejlen. I har ikke haft mulighed for at finde fejlen, og dette beklager jeg, da dette egentlig har spildt jer tid lidt. Fejlen lå i noget kode som ikke nævnt, da jeg overhovedet ikke havde troet dette skulle kunne forårsage.
Som i måske kan læse i html koden, så er det toppen og menu'en af siden. Ud over det, er der mange flere divs, bl.a. venstre, midter og højre spalte. I højre spalte ligger nogle divs som har følgende CSS:
Som du kan se i min css har jeg lavet det sådan her #menu a:link, #menu a:visited { det gør at det kun virker i denne div, det er vigtigt så ikke dine a:visited arver noget fra en anden end den du tro du skriver til :)
Helt sikkert noget olebole kan skrive langt bedre så det også er til at forstå :-)
Så er jeg helt med, tak for forklaringen. Jeg sad nemlig også lige og tænkte over at der nu også skulle foretages småændringer ved #menu så, mens jeg læste din forklaring ;)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.