Avatar billede chrisson Nybegynder
10. august 2006 - 15:49 Der er 31 kommentarer og
1 løsning

Kan ikke få placeret Div'en ordentligt!

Hej, jeg er igang med en 3dchat, og jeg har fået lavet en taleboble. Men den placere sig under manden. Har prøvet alt, men kan bare ikke få den op ved siden af manden. Uden at den skubber du andre figure! Håber nogle kan hjælpe med det!

Koden:

if ($num == "0") { echo "<TD id=" . $i . "><div style='height:110%;width:130%;overflow:hidden;z-index: 1;'><a href='ryk.php?felt=" . $t . "&ryk=ja' target='script'><img src='/images/bg/bg.gif' width='130%' height='115%' border='1'></a></div></TD>"; } else { echo "<TD id=" . $i . "><div style='height:110%;width:100%;overflow:hidden;z-index: 2;'><img src=/images/figur/" . $row[figur] . "><br><a href=profil.php?b=" . $row[brugernavn] . " target=frame_Chat><FONT FACE=Verdana SIZE=1 COLOR=#" . $rowData1[farve] . ">" . $row[brugernavn] . "</FONT></a></div>"; }
if ($row_tekst[tekstbesked] == "") { echo "</TD>"; } else { echo "<div id='tekst' style='height:25px;width:100px;position:absolute;left: . $i . ;top: . $i . px;z-index: 3; background:url(ramme.gif) no-repeat #fff'><FONT FACE=Verdana SIZE=1>$row_tekst[tekstbesked]</font></div></TD>"; }
Avatar billede roenving Novice
10. august 2006 - 16:02 #1
Prøv også at vise den kode, der kommer til browseren, for så bliver det en hel del nemmere at overskue !-)
Avatar billede chrisson Nybegynder
10. august 2006 - 16:27 #2
Hvad mener du med det?
Avatar billede mclemens Nybegynder
10. august 2006 - 18:28 #3
At rigtig mange af os hellere vil have et test eksempel end at sidde og rode med at analysere hvad et php script eller asp script spytter ud i html - det tager en del længere tid end at have et test eksempel at pille ved. I dette tilfælde er det f.eks. lidt svært at sige hvad $i f.eks. er - og et grafisk indtryk af problemet gør alting en del lettere at gennemskue(om ikke altid så for det meste)...

- Kort sagt: Lad php'en generere en html bid som man kan pille ved - derefter kan du implementere delen ... husk at poste css ting der måske påvirker igennem stylesheetet også.
Avatar billede chrisson Nybegynder
10. august 2006 - 19:21 #4
Altså en kilde kode?
Avatar billede chrisson Nybegynder
10. august 2006 - 19:28 #5
<TD id=15><div style='height:110%;width:130%;overflow:hidden;z-index: 1;'><a href='ryk.php?felt=15&ryk=ja' target='script'><img src='/images/bg/bg.gif' width='130%' height='115%' border='1'></a></div></TD></TD><TD id=16><div style='height:110%;width:100%;overflow:hidden;z-index: 2;'><img src=/images/figur/nymandhvid.gif><br><a href=profil.php?b=admin target=frame_Chat><FONT FACE=Verdana SIZE=1 COLOR=#>admin</FONT></a></div><div id='tekst' style='height:5px;width:100px;position:absolute;left: . 16 . ;top: . 16 . px;z-index: 3; background:url(ramme1.gif) no-repeat #fff'><FONT FACE=Verdana SIZE=1>Davs</font></div></TD>
Avatar billede chrisson Nybegynder
10. august 2006 - 19:29 #6
Det er lige en hurtig kildekode :P
Avatar billede mclemens Nybegynder
10. august 2006 - 19:46 #7
position:absolute;left: . 16 . ;top: . 16 . px;z-index: 3; ???
Mon ikke position:absolute;left:16px;top:16px;z-index: 3;
- er lidt bedre... Husk id'er må ikke starte med tal.

... Hvis den så stadig ikke er i pletskud efter at din left og top defineringer er ok css mæssigt - så mangler du at skrive width og height på manden da vi ikke har et billede af ham...
Avatar billede mclemens Nybegynder
10. august 2006 - 20:02 #8
D.v.s.:

...left: . $i . ;top: . $i . px;...

Rettes til ->

...left:".$i."px;top:".$i."px;...

- Ind og ud hopning så du undgår de punkter i
outputtet og tilføjelse af px efter tallet...
Avatar billede chrisson Nybegynder
10. august 2006 - 20:07 #9
Nu sætter den sig helt oppe i toppen
Avatar billede chrisson Nybegynder
10. august 2006 - 20:08 #10
Hov, så ikke dit første indlæg, 2 sek
Avatar billede chrisson Nybegynder
10. august 2006 - 20:11 #11
Den eneste måde at den kan komme under manden er med:  . $i .
Avatar billede mclemens Nybegynder
10. august 2006 - 20:26 #12
[ Nu sætter den sig helt oppe i toppen ]
- Så er det nok fordi tallet for top skal være højere - altså svare til mandens højde ... og så skal der nok kastes en position:relative; på den div hvor du placerer manden og taleboblen i...



[ Den eneste måde at den kan komme under manden er med:  . $i . ]
- Ok, men så skyder jeg på at det svarer til at du fjerner top defineringen også da du skrev følgende somhtml output i 10/08-2006 19:28:40:
position:absolute;left: . 16 . ;top: . 16 . px; ... bemærk - de punktummer skal altså ikke være der og så skal der px definering efter tallet for left defineringen - for ellers hvordan skal browseren vide hvad snakker vi om som mål % , px , em , pt o.s.v. ???



[ Hov, så ikke dit første indlæg, 2 sek ] Uddrag fra første spørgsmål:

... Hvis den så stadig ikke er i pletskud efter at din left og top defineringer er ok css mæssigt - så mangler du at skrive width og height på manden da vi ikke har et billede af ham...

- Det er lidt svært at placere en ting man ikke kan se hvordan den skal placeres men prøv evt. med det position:relative; på den omsluttende div og så øgelse af top defineringen med ordentlig mål angivelse som i 10/08-2006 20:02:56... Og så husk en fuld doctype (uden noget før doctypen) på siden så IE overholder css.
Avatar billede chrisson Nybegynder
10. august 2006 - 21:01 #13
Ahh... Den stilte sig under manden, fordi at den ikke kunne udskrive Top og left :P Nu forstår jeg, jeg prøver lige om jeg kan sætte den nu
Avatar billede chrisson Nybegynder
10. august 2006 - 22:10 #14
kan du godt få den til at gøre det, jeg har prøvet og prøvet, den der $i den siger hvilket felt denne id er!
Avatar billede mclemens Nybegynder
10. august 2006 - 22:34 #15
Joh, det kan jeg da godt - jeg prøver da lige at sætte position:relative; på omsluttende div ... Grunden til at jeg ikke er kommet med et oplæg er at jeg har spurgt 2 gange (fra 10/08-2006 19:46:16 og fra 10/08-2006 20:26:13: [... Hvis den så stadig ikke er i pletskud efter at din left og top defineringer er ok css mæssigt - så mangler du at skrive width og height på manden da vi ikke har et billede af ham...] - Bemærk ordene manden og mangler width og height...) efter størrelsen på manden - det er jo en ret væsentlig ting når vi snakker om at placere et element til højre for en mand ... men kommer lige med et eksempel... men om den passer ind på din side er jo lidt et skud i tågen...
Avatar billede mclemens Nybegynder
10. august 2006 - 22:40 #16
Hmm, omsluttende div var der ikke - havde ikke splittet testen ordentligt ud...
- Jeg undrer mig også lige over det med </td></td> i denne linje
... nåh laver lige en test færdig...

<TD id=15>

<div style='height:110%;width:130%;overflow:hidden;z-index: 1;'><a href='ryk.php?felt=15&ryk=ja' target='script'><img src='/images/bg/bg.gif' width='130%' height='115%' border='1'></a></div>

</TD></TD> <- ?

<TD id=16>...
Avatar billede chrisson Nybegynder
10. august 2006 - 22:49 #17
Altså:

<TD id=".$i.">

<div style='height:110%;width:130%;overflow:hidden;z-index: 1;'><a href='ryk.php?felt=15&ryk=ja' target='script'><img src='/images/bg/bg.gif' width='130%' height='115%' border='1'></a></div>

</TD>
Avatar billede mclemens Nybegynder
10. august 2006 - 22:51 #18
Jeg er som sagt ikke sikker på det visuelle men her er et eksempel på tekst til højre for admin ... er langt tid siden jeg har rodet med tabeller efterhånden - håber det går ... har forudsat at width på mændene er 40px - det width:110%;og height:130%; virkede som om at det lavede lidt rod her ... prøver lige eksemplet...



<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><title>Ingen titel</title>

</head><body><br><br><br><br>

<table style="padding:0px;border-collapse:collapse;"><tr><td id="d15" style="width:40px;vertical-align:top;">


<div style='background:red;'>
<a href='ryk.php?felt=15&ryk=ja' target='script'><img src='/images/bg/bg.gif' style="border:0px;width:40px;"></a><br>
</div>




</TD><TD id="d16" style="width:40px;">



<div style="position:relative;">

<div style='background:blue;'><img src=/images/figur/nymandhvid.gif style="width:40px;vertical-align:top;"><br><a href=profil.php?b=admin target=frame_Chat><FONT FACE=Verdana SIZE=1 COLOR=#>admin</FONT></a></div>

<div id='tekst' style='height:5px;width:100px;position:absolute;left:40px;top:0px;z-index: 3; background:url(ramme1.gif) no-repeat #fff'><FONT FACE=Verdana SIZE=1>Davs</font></div>

</div>



</td></tr></table>

</body></html>
Avatar billede chrisson Nybegynder
10. august 2006 - 22:57 #19
Måske ville din virke, men så skal jeg lave hele systemmet om, vil lige prøve det
Avatar billede mclemens Nybegynder
10. august 2006 - 22:58 #20
For at vise hvorfor jeg ikke kan bruge de width
defineringer til noget så prøv at betragte dette eksempel:

Åben i IE og luk igen åben så igen - str. varierer lidt.
... eller er billedet 221 px bredt i IE og 131 px bredt i firefox?



<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta

http-equiv="content-type" content="text/html; charset=iso-8859-1"><title>Ingen titel</title>

</head><body><br><br><br><br>

<table><tr>

<TD id="d1">

<div style='height:110%;width:130%;overflow:hidden;z-index: 1;'><a href='ryk.php?felt=15&ryk=ja' target='script'><img

src='http://www.eksperten.dk/img/elogo.png' width='130%' height='115%' border='1'></a></div>

</TD>

</td></tr></table>

</body></html>
Avatar billede mclemens Nybegynder
10. august 2006 - 23:04 #21
Du er nødt til at have den position:relative; div til at omslutte elementet ellers er det svært at place text boblen præcis - så skal du placere det hele relativt til selve dokumentet og det bliver ikke så let som hvis den har et fast støttepunkt i form af at de er placeret i en relative div.

- Altså enten den relative div - ellers må du definere top og left så
det passer på dine elementer i forhold til deres placering på siden.

Hvis du så skal lave hele systemet om fordi du ikke har taget hensyn til at du skulle have elementerne placeret i en wrapper div kan jeg selvfølgelig godt se at det er trals - men med php bør det vel ikke være hårdt at tilføje et wrapper element eller?
Avatar billede mclemens Nybegynder
10. august 2006 - 23:12 #22
I mit sidste eksempel 10/08-2006 22:58:13 kom der vist lige
2 gange </td> i rap ... det gik vist lidt for hurtigt :D
Avatar billede chrisson Nybegynder
10. august 2006 - 23:23 #23
Prøver din måde, og laver et nyt rykkeystem, med skrå felter. Melder tilbage, hvis jeg får fejl
Avatar billede chrisson Nybegynder
11. august 2006 - 11:18 #24
Ved godt du gerne overholde reglerne, og ved godt at man ikke må kontakte folk uden for Exp.dk, men må jeg ikke godt få din msn. Da det jeg har sidet og lavet gir lidt problemmer, og vil nemt kunne bruges af andre! lige pludselig vil alle mullige sider have en 3dchat med skråfelter! Men kan jeg ik nok det? Skal nok huske at lægge svaret ind her efter. Og du skal nok få flere point!
Avatar billede mclemens Nybegynder
13. august 2006 - 19:10 #25
... Undskyld jeg ikke skriver før nu, overså at tråden tidligere
var steget i min oversigt over tråde jeg deltager i ...


[ Ved godt du gerne overholde reglerne, ] Yes, helst....
( http://www.eksperten.dk/spm/708142 , http://www.eksperten.dk/spm/724994 o.s.v.)

[ men må jeg ikke godt få din msn. ]
Nej, det må du ikke !) -> Jeg har ikke msn.


[ Da det jeg har sidet og lavet gir lidt problemmer, og vil nemt kunne bruges
af andre! lige pludselig vil alle mullige sider have en 3dchat med skråfelter! ]
- Yes, det er netop derfor nogle løsninger foregår uden om eksperten.dk


[ Men kan jeg ik nok det? ] Jeg lægger mig ikke fast til en opgave, jeg
har en internet forretning at passe - dette er fritidsbeskæftigelse med
lidt tips og hints til dem der stiller spørgsmål for mit vedkommende.
(samtidig med at deltage herinde får jeg lidt træning
samt hints fra andre brugere til kodning af løsninger.)


Jeg er ikke "udlært" indenfor IT overhovedet, men hvis jeg var
interesseret i opgaver løst uden for eksperten ville det nok
være kontanter og ikke point der ville trække.


[ Skal nok huske at lægge svaret ind her efter. ]
Det ville betyde at du skulle lægge svaret i hele sin helhed
- ellers er 2.1.12 og 2.1.13 ikke overholdt...


... Jeg er som sagt ikke interesseret i at hjælpe med denne
opgave uden til eksperten - min e-mail har tidligere været
bombet med henvendelser på hjælp til kodning ... og det
skal ikke ske igen - derfor kan jeg ikke hjælpe medmindre
du kan poste problemet herinde og fejlen så kan løses derved.
Avatar billede mclemens Nybegynder
13. august 2006 - 19:10 #26
Mvh, Clemme :o)
Avatar billede chrisson Nybegynder
13. august 2006 - 22:18 #27
Ok :P Men ved du hvordan man gør sådan at man ikke skal skrive

Where felt = '1'
Where felt = '2'
Osv. indtil 39
Avatar billede mclemens Nybegynder
13. august 2006 - 22:53 #28
Ved ikke hvad where er - du har ikke brugt det tidligere ?
... Man måske kan du sige where felt < 40 eller er det en
while løkke kan du køre while(felt<40){} ...
Avatar billede mclemens Nybegynder
13. august 2006 - 23:56 #29
... Her er lige svaret for spørgsmålet ...
- Løsningen på at placere tekst ved siden af en
mand er som nævnt i 10/08-2006 23:04:07 at have en
relative div som man placerer indholdet i hvorefter
man så placerer indholdet via absolute.


- Kaster dette som et svar... Hvis du har spørgsmål
til php eller mysql som den where måske henviser til
bør du overveje et spørgsmål i php eller mysql kategorien.


- M.h.t. dine skrå felter ville jeg nok overveje lidt sporing af klikplacering via. javascript med højde defineringer i scriptet ... det kan måske også laves med Java. Men jeg har ikke lyst til at lave en 3dchat så for at få hjælp med en scripting hvis du ikke selv vil splitte billeder op i en masse små dele og placere dem i en masse små felter på kryds og tværs i forskellige felter med et meget kompliceret php leverings script anbefaler jeg et spørgsmål angående en skråt felts tracking script.


Hvis du selv kan kode kan du lege med denne her og lege med onclick
på en div og js scripting på musens placering indeni div'en og så scripte
det videre via. ajax eller reload af siden - for at få manden placeret det
nye sted afhængig af om serverside validering siger at feltet er ledigt...
... Ellers kan du jo kaste et spørgsmål om hjælp til skrå felter i Java eller
Javascript. Nedenstående måling er javascript - jeg ved ikke om java er bedre
til 3dchat end javascript. (har aldrig læst om java)




<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><head><meta http-equiv="content-type" content="text/html; charset=iso-8859-1"><title>Ingen titel</title>

<style type="text/css">

#micestalker{
position:absolute;top:0px;left:0px;display:none;}
}

</style>

<script type="text/javascript">
<!--

var dmcy=0;var dmcx=0;var micestalk;
var stalkleft=10; // px til højre for mus (tal)  px til venstre for mus (-tal)
var stalktop=10; // px til nedenunder mus (tal)  px over for mus (-tal)

var IE=((document.all) && (navigator.userAgent.indexOf('Opera')== -1))?true:false;
if(!IE)document.captureEvents(Event.mousemove)

document.onmousemove=function (e){
if(IE){
  dmcst=(tmenu=document.documentElement.scrollTop)?tmenu:document.body.scrollTop;
  dmcsl=(lmenu=document.documentElement.scrollLeft)?lmenu:document.body.scrollLeft;
  dmcy=event.clientY+dmcst;dmcx=event.clientX+dmcsl;
}else{dmcy=e.pageY;dmcx=e.pageX;}

//document.getElementById("x").innerHTML=dmcx; // innerHTML tildeling midlertidig deaktiveret
//document.getElementById("y").innerHTML=dmcy;

document.getElementById("x").childNodes[0].nodeValue=dmcx;
document.getElementById("y").childNodes[0].nodeValue=dmcy;
micestalk.style.top=dmcy+stalktop+"px";
micestalk.style.left=dmcx+stalkleft+"px";

}


window.onload=function(){
  micestalk=document.getElementById("micestalker");
  micestalk.style.display="block"; // viser div onload da folk kan have deaktiveret js
}
//-->
</script>


</head>


<body><b onclick="alert('x: '+dmcx+'\ny: '+dmcy);">Test</b>
<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.<br>.


<div id="micestalker">x:<span id="x">Javascript kræves</span>, y:<span id="y">Javascript kræves</span></div></body></html>







Hvis du har et spørgsmål til placering via. position:relative; ,
position:absolute; top og left defineringer som vist i 10/08-2006 22:51:19
så spørg løs og jeg gør det bedste for at uddybe det, men som sagt en relative
placering i forhold til mandens egen div er det letteste at håndtere :o)
Avatar billede chrisson Nybegynder
14. august 2006 - 22:09 #30
Tak for hjælpen og fordi du gad og bruge tid på mig :D fik hjælp i ved php, så nu køre det bare :D tak for hjælpen! og du har fået points!
Avatar billede mclemens Nybegynder
14. august 2006 - 22:20 #31
[ Tak for hjælpen og fordi du gad og bruge tid på mig :D ] Det var skam så lidt :o)
[ fik hjælp i ved php, så nu køre det bare :D ] Har rodet lidt med php, men ikke så meget som css, html og javascript.
[ tak for hjælpen! og du har fået points! ] Mange tak for mange point :o)
Held og lykke med din 3d chat :o)
Avatar billede chrisson Nybegynder
15. august 2006 - 00:18 #32
Tak, :D nu har jeg fået lavet skrå felter og taleboblerne til at virke :D men kunne ikke det uden din hjælp!
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