23. august 2002 - 14:45
Der er
19 kommentarer og 1 løsning
absolute!
altså jeg har en tabel hvori der ligger et billede! det billede vil jeg gerne have placeret sådan at det ligger lige på borderen! men jeg kan ikke rigtig finde ud af det der position: absolute noget! nogen der kan fortælle mig hvordan?
Annonceindlæg fra Barco
23. august 2002 - 14:47
#1
brug style="position:relative;top:-4;left:-4" ret mine -4 til til hvad der nu får det til at passe.
23. august 2002 - 14:51
#2
ja men problemet er så at når man gør det sådan så sætter den billedet helt oppe i hjørnet af siden! billedet skal jo placeres ud fra tabellen ikke selve siden! :) muligt?
23. august 2002 - 14:55
#3
Det er ikke nok at placere billedet inde i tabellen - det skal simpelthen placeres oven på en border?
23. august 2002 - 14:57
#4
yes sq!
23. august 2002 - 14:57
#5
Var det ikke nemmere at gøre 2 af borders usynlige :) Nå 2 sek.
23. august 2002 - 15:00
#6
pelkjaer: nej for jeg kan godt li borders :)
23. august 2002 - 15:05
#7
Jeg tror ikke det er muligt at lave det crossbrowser uden javascript. Dette her fungerer i hvert fald: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <style type="text/css"> <!-- #mytabel { width: 250px; border: 1px solid #000000; } #pic { position: absolute; } --> </style> <script type="text/JavaScript"> <!-- function findObj(n, d) { var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=findObj(n,d.layers[i].document); if(!x && d.getElementById) x=d.getElementById(n); return x; } function Snap() { var x,y,ox,bx,oy,p,tx,a,b,k,d,da,e,el,tw,q0,xx,yy,w1,pa='px',args=Snap.arguments;a=parseInt(a); if(document.layers||window.opera){pa='';}for(k=0;k<(args.length);k+=4){ if((g=findObj(args[k]))!=null){if((el=findObj(args[k+1]))!=null){ a=parseInt(args[k+2]);b=parseInt(args[k+3]);x=0;y=0;ox=0;oy=0;p="";tx=1; da="document.all['"+args[k]+"']";if(document.getElementById){ d="document.getElementsByName('"+args[k]+"')[0]";if(!eval(d)){ d="document.getElementById('"+args[k]+"')";if(!eval(d)){d=da;}} }else if(document.all){d=da;}if(document.all||document.getElementById){while(tx==1){ p+=".offsetParent";if(eval(d+p)){x+=parseInt(eval(d+p+".offsetLeft"));y+=parseInt(eval(d+p+".offsetTop")); }else{tx=0;}}ox=parseInt(g.offsetLeft);oy=parseInt(g.offsetTop);tw=x+ox+y+oy; if(tw==0||(navigator.appVersion.indexOf("MSIE 4")>-1&&navigator.appVersion.indexOf("Mac")>-1)){ ox=0;oy=0;if(g.style.left){x=parseInt(g.style.left);y=parseInt(g.style.top);}else{ w1=parseInt(el.style.width);bx=(a<0)?-5-w1:-10;a=(Math.abs(a)<1000)?0:a;b=(Math.abs(b)<1000)?0:b; x=document.body.scrollLeft+event.clientX+bx;y=document.body.scrollTop+event.clientY;}} }else if(document.layers){x=g.x;y=g.y;q0=document.layers,dd="";for(var s=0;s<q0.length;s++){ dd='document.'+q0[s].name;if(eval(dd+'.document.'+args[k])){x+=eval(dd+'.left');y+=eval(dd+'.top'); break;}}}e=(document.layers)?el:el.style;xx=parseInt(x+ox+a),yy=parseInt(y+oy+b); if(navigator.appVersion.indexOf("MSIE 5")>-1 && navigator.appVersion.indexOf("Mac")>-1){ xx+=parseInt(document.body.leftMargin);yy+=parseInt(document.body.topMargin);} e.left=xx+pa;e.top=yy+pa;}}} } //--> </script> </head> <body onLoad="Snap()"> <div id="pic"><img src="tblbrite.gif" width="14" height="11"></div> <table align="center" cellpadding="0" cellspacing="0" id="mytabel"> <tr> <td> test<br> test </td> </tr> </table> </body> </html>
23. august 2002 - 15:07
#8
nice jeg prøver det lige!!! (elsker store koder)
23. august 2002 - 15:13
#9
men øhm bliver sådan en kode ikke lidt svær at ændre på? fordi hvad du hvis det skal være et andet hjørne den skal sidde i hva så? :)
23. august 2002 - 15:16
#10
Så rykker du blot positioneringen op eller til venstre i forhold til tabellen. Fx. <body onLoad="Snap('mytabel','pic',40,30)"> (40 og 30 er i pixel)
23. august 2002 - 15:18
#11
Du kan også bruge -tal, så du har fuld kontrol. Du skal bare huske at rezise ved reload, fx. <body onLoad="Snap('mytabel','pic',40,30)" onResize="location.reload()">
23. august 2002 - 15:21
#12
så hvis jeg skal loade flere billeder ind ad gangen hva så?
23. august 2002 - 15:25
#13
Så kører du den bare videre: <body onLoad="Snap('mytabel','pic',30,40,'mytabel','pic2',10,20)"> <div id="pic"><img src="tblbrite.gif" width="14" height="11"></div> <div id="pic2"><img src="pic2.gif" width="14" height="11"></div> <table align="center" cellpadding="0" cellspacing="0" id="mytabel"> <tr> <td> test<br> test </td> </tr> </table>
23. august 2002 - 15:35
#14
altså jeg har centreret min tabel og derfor flytter tabellen sig når man resizer vinduet! og problemet er så at billederne ikke flytter sig! :( hvad kan man gøre ved det?
23. august 2002 - 15:39
#15
Altså, som jeg sagde tidligere, reload siden ved rezise onresize="location.reload()"
23. august 2002 - 15:44
#16
ok!
23. august 2002 - 15:47
#17
det virker ikke ordentligt :( de skrider stadig ud til siderne når man resizer vinduet + den reloader jo siden! :) er der ikke en smartere måde?
23. august 2002 - 15:56
#18
hmm jeg prøver lige noget!
23. august 2002 - 16:02
#19
Ja det reloader siden, men det virker skam ordentligt - de skrider ingen vegne.
23. august 2002 - 16:24
#20
jo ved mig gør det! men jeg har bare fjernet centreringen så jeg har alligevel ikke brug for det! :)
Vi tilbyder markedets bedste kurser inden for webudvikling