Avatar billede oergaard Nybegynder
17. februar 2004 - 12:20 Der er 14 kommentarer og
1 løsning

Hvordan centreres et objekt?

Jeg har lavet et objekt, som jeg ønsker centreret på siden.

Jeg har intet problem med, at placere objektet et antal px fra venstre, men jeg mener, at det er voldsomt overarbejde, at skulle bede om brugers skærmopløsning for så at trække mit objekts brede fra og dele med to. Det må kunne gøres nemmere.

//Oergaard
Avatar billede mm12010 Nybegynder
17. februar 2004 - 12:21 #1
<div align="center">noget</div>
Avatar billede mik789 Nybegynder
17. februar 2004 - 12:26 #2
du skal ikke kende brugeres skærmopløsning men bare målene på det element du vil centrere:

<div style="top:50%;left:50%;width:300px;height:200px;margin-left:-150px;margin-top:-100px;">blabla</div>
Avatar billede mik789 Nybegynder
17. februar 2004 - 12:29 #3
og i øvrgt er det ikke så besværligt endda, se evt.: http://www.e-tidsskrift.dk/dev/center_div.php
//mik
Avatar billede oergaard Nybegynder
17. februar 2004 - 12:38 #4
<div align="center">noget</div>
Denne er afprøvet men virker desværre ikke!!!

<div style="top:50%;left:50%;width:300px;height:200px;margin-left:-150px;margin-top:-100px;">blabla</div>
Denne er godt nok ikke afprøvet, men vil den ikke give lidt samme effekt som ovenstående ??

//Oergaard
Avatar billede mik789 Nybegynder
17. februar 2004 - 12:39 #5
nej, for den regner jo præcist ud hvor dit element skal placeres... men hvad er det for et objekt vi taler om?
Avatar billede oergaard Nybegynder
17. februar 2004 - 12:44 #6
Det er en lang række af billeder i et lille format, men kan så scrolle fra side til side, ved blot, at holde musen over hhv. pil til højre og venstre.

Jeg tror lidt problemet ligger i min CSS kode, hvor jeg har skrevet "position:absolut"

Jeg skriver derefter i mit script Objekt.Left="";

Men jeg har ikke kunne få det til at virke uden denne del.

//Oergaard
Avatar billede mik789 Nybegynder
17. februar 2004 - 12:52 #7
hvis "Objekt" er navnet på dit objekt og "Left" er navn på CSS egneskaben "left", skal du skrive: Objekt.style.left=""

hvis objektet har position:absolute, vil det blive regnet fra første omgivende boks med position: absolute eller realtive eller (hvis ikke der er en sådan) fra rod-elementet (html i standard mode, body i quirksmode)
Avatar billede mik789 Nybegynder
17. februar 2004 - 12:54 #8
og lige en ting til: for at text-align:center skal virke skal det element du vil centrere have venstre og højre margin sat til "auto" eller der skal ikke være angivet margin, altså f.eks.: margin: 20px auto; eller margin-left: auto; margin-right: auto;
Avatar billede mik789 Nybegynder
17. februar 2004 - 13:01 #9
jeg tror også at du SKAL have en angivelse af position når du bruger top og left (som jeg også gør i mit eks. ovenfor). Så koden skulle vel være:

<div style="position:absolute;top:50%;left:50%;width:300px;height:200px;margin-left:-150px;margin-top:-100px;">blabla</div>
Avatar billede oergaard Nybegynder
17. februar 2004 - 13:52 #10
<div style="position:absolute;top:50%;left:50%;width:300px;height:200px;margin-left:-150px;margin-top:-100px;">blabla</div>
Dette er nu prøvet, men virker ikke.

Objektet bliver ikke placeret i CSS, men i selve scriptet, jeg er meget sikker på, at det ikke vil virke grundet, at scriptet går ind over SCC.
Mit script hedder:
oBg.moveIt(sLeft,sTop);

Jeg har så en funktion, som hedder MoveIt, som har koden:
if(x!=null){this.x=x; this.css.left=this.x+px;}
if(y!=null){this.y=y; this.css.top=this.y+px;}

Når jeg ændre de to værdier (sLeft & sTop) flytter objektet sig fint, men jeg kan ikke få den centreret.

//Oergaard
Avatar billede mik789 Nybegynder
17. februar 2004 - 13:59 #11
du er nødt til at centrere i forhold til den omgivende box; kender du målene på den? prøv at lægge noget mere kode - både hvad der er af css og af javascript til dit objekt
Avatar billede oergaard Nybegynder
17. februar 2004 - 14:14 #12
koden kan ses på følgende link:
http://www.dhtmlcentral.com/script/script.asp?id=30

Jeg har godt nok ændret lidt i koden, men ikke hvad har med position at gøre.

//Oergaard
Avatar billede mik789 Nybegynder
17. februar 2004 - 14:36 #13
jeg har ikke arbejdet med de der dhtml-central menuer - desværre :-\

måske kan der komme andre på banen...?
Avatar billede oergaard Nybegynder
17. februar 2004 - 14:39 #14
det er der jo ikke noget at gøre ved, man kan sige, at du har gjort dit, det kan også være, at jeg bare skal lade det være som det er!!

Pt virker det med en alm. scroll-bar, men synes den med bare at holde musen hen over var/er ret smart!!!
Avatar billede oergaard Nybegynder
18. februar 2004 - 12:50 #15
Jeg nøjes med det jeg allerede har! :-)

//Oergaard
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