Avatar billede simplus Nybegynder
08. februar 2007 - 20:44 Der er 11 kommentarer og
1 løsning

Box flytter sig for hvert tryk i firefox

Jeg har lavet dette design: www.simplus.frac.dk men hvis man ser siden i firefox og trykker på den samme box flere gange så vil den flytte sig til højre.

Jeg håber nogen vil hjælpe mig med at finde fejlen, i kan se koden ved at trykke vis -> kilde
Avatar billede mcgoat Nybegynder
08. februar 2007 - 21:00 #1
kigger lige med
Avatar billede erikjacobsen Ekspert
08. februar 2007 - 21:56 #2
Du skal vel ændre visibility i stedet for display ?
Avatar billede simplus Nybegynder
08. februar 2007 - 22:01 #3
Har lige prøvet at lege lidt med det, men det giver fejl:

  function toggle(lagNavn) {
    var obj = document.getElementById(lagNavn);
    if(obj)
      obj.style.visibility=(obj.offsetHeight==0?'block':'hidden');
  }
Avatar billede jokkejensen Novice
08. februar 2007 - 22:10 #4
det skal ikke være visiblity... visibility reservere plads på siden, display "fjerner" elementet..

visibility har attributterne visible og hidden.. og ikke block/hidden.

Din side er meget uhensigsmæssigt bygget op, og jeg tror det er det FF ikke fatter..
Avatar billede simplus Nybegynder
08. februar 2007 - 22:17 #5
#jokke

Det lyder jo meget logisk, men jeg har prøvet at ændre det som jeg forstår det, og det giver ingen fejl. Der sker dog intet?

  function toggle(lagNavn) {
    var obj = document.getElementById(lagNavn);
    if(obj)
      obj.style.visiblity=(obj.offsetHeight==0?'visible':'hidden');
  }

Kan du også være så venlig at uddybe uhensigsmæssigt? :-)
Avatar billede jokkejensen Novice
08. februar 2007 - 22:21 #6
Ja at lave lag med en tabel.. du ønsker at ligge et lag -> en container -> et div oven på en tabel... men du tager en celle i samme tabel og ligger oven på en anden række i tabellen.. kan du se uhensigmæssigheden..

never mind - det kan selvfølgeligt fuskes.

Jeg har ikke mulighed for at ligge et omkring liggende div omkring tabellen, så jeg har brugt din body..

Bodyen sætter jeg til samme bredde som tabellen, og sætte position til relativ, så vil mine absolutte værdier blive sat ud fra den, og nu kan jeg sige right: 0px på dine "lag" du ligger oven på.. så skal FF ikke længere gætte sig til hvor du vil positionere dine lag horizontalt.. før sagde du at top skulle være 125px fra toppen af body - men hvor skulle den ligge sig horizontalt ? - det skulle gættes, hvilket IE gjorde godt.

mit eksempel:

body {
    background-color: #000000;
    font-family: verdana, sans-serif;
width: 482px;
margin:0 auto;
border: 1px solid red;
position:relative;
}
.box {
    background-image: url('img/box.PNG');
    background-repeat: no-repeat;
    height: 90px;
    width: 108px;
}
table
{
position:relative;
}
.newbox1 {
    z-index: 2;
    display:none;
    position: absolute;
    top: 125px;
left:0px;
    width: 482px;
    height: 230px;
    background-color: #9D080D;
    border: 2px solid #808080;
    color: #FFFFFF;
    font-size: 10px;
    text-align: right;
    padding-top: 5px;
    padding-right: 5px;
    font-style: italic;
}

Det kan være det fucker lidt i IE. men jeg anbefaler dig på det kraftigste at ligget et div omkring tabellen, og give det en bredde på de 482px og sætte position til relative på det.


/JJ
Avatar billede jokkejensen Novice
08. februar 2007 - 22:22 #7
(det jeg har tilføjet er indrykket)

jeg skriver right: 0px i min beskrivelse.. det er left: 0px--

beklager..
Avatar billede jokkejensen Novice
08. februar 2007 - 22:29 #8
Sådan her sparer du let et par kilometer CSS fremover :)

.newbox1, .newbox2, .newbox3, .newbox4 {
    z-index: 2;
    display:none;
    position: absolute;
    top: 125px;
    left:0px;
    width: 482px;
    height: 230px;
    background-color: #9D080D;
    border: 2px solid #808080;
    color: #FFFFFF;
    font-size: 10px;
    text-align: right;
    padding-top: 5px;
    padding-right: 5px;
    font-style: italic;
}
.newbox2 {
    background-color: #3A7C85;
    border: 2px solid #808080;
}
.newbox3 {
    background-color: #7C9251;
    border: 2px solid #808080;
}
.newbox4 {
    background-color: #DFAC40;
    border: 2px solid #808080;
}
Avatar billede jokkejensen Novice
08. februar 2007 - 22:32 #9
Avatar billede simplus Nybegynder
08. februar 2007 - 22:35 #10
Det hele ser virkelig fint ud, jeg sidder lidt og leger lidt med det. Jeg skal jo til at omplacere alle elementerne. Så hvis du tænker på hvorfor jeg ikke svarer eller acceptere dit svar, så betyder det intet dårligt. Jeg sidder bare og prøver ting af.

Endnu en gang, tak.
Avatar billede jokkejensen Novice
08. februar 2007 - 22:39 #11
mit svar skulle nu gerne "fikse" det helt.

Men du leger bare løs, hvis du alligevel skal til at lave det om - anbefaler jeg du laver det med <div> tags - de er noget mere hensigsmæssige til din løsning.

tabeller er primært til tabulære data- lister af data, og ikke til at positionere sit design med.

/JJ
Avatar billede simplus Nybegynder
09. februar 2007 - 19:32 #12
Det hele virker, og dit svar er accepteret. Kig her for at se den nye kode: www.simplus.frac.dk

Jeg takker mange gange for jeres hjælp, den har været yderst brugbar! :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester