🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.javascript
5 messages
5 total messages Started by Netman Wed, 04 Nov 2009 20:42
przesunięcie obiektu względem krawędzi body
#49495
Author: Netman
Date: Wed, 04 Nov 2009 20:42
12 lines
1362 bytes
Witam!

Czy istnieje możliwość przesunięcia obiektu np. div`a względem krawędzi 
znacznika <body>.
Chodzi mi o to, żeby przesunięcie było jednakowe dla ekranów monitorów 
szerokokątnych i zwykłych monitorów notebookowych i np. starych crt i było 
umieszczone w tej samej odległości od krawędzi div`a. Chodzi głównie o 
umiejscowienie banerów na stronie dokładnie w tym samy miejscu nieważne jaki 
jest to monitor i jaka rozdzielczość monitora.

Proszę o pomoc
netman 
Re: przesunięcie obiektu względem krawędzi body
#49496
Author: Netman
Date: Wed, 04 Nov 2009 20:43
22 lines
1674 bytes
Użytkownik "Netman" <netman@poczta.onet.pl> napisał w wiadomości 
news:hcsovo$g8s$1@news.onet.pl...
> Witam!
>
> Czy istnieje możliwość przesunięcia obiektu np. div`a względem krawędzi 
> znacznika <body>.
> Chodzi mi o to, żeby przesunięcie było jednakowe dla ekranów monitorów 
> szerokokątnych i zwykłych monitorów notebookowych i np. starych crt i było 
> umieszczone w tej samej odległości od krawędzi div`a. Chodzi głównie o 
> umiejscowienie banerów na stronie dokładnie w tym samy miejscu nieważne 
> jaki jest to monitor i jaka rozdzielczość monitora.
>
> Proszę o pomoc
> netman
>

Aha zapomniałem napisać, że jeśli istnieje jakiś sposób to proszę pomóżcie z 
przykładowym kodem:)

Pozdrawiam
netman 
Re: przesunięcie obiektu względem krawędzi body
#49497
Author: Andrzej Kmicic
Date: Mon, 09 Nov 2009 09:05
71 lines
3050 bytes
Netman pisze:
> Użytkownik "Netman" <netman@poczta.onet.pl> napisał w wiadomości 
> news:hcsovo$g8s$1@news.onet.pl...
>> Witam!
>>
>> Czy istnieje możliwość przesunięcia obiektu np. div`a względem krawędzi 
>> znacznika <body>.
>> Chodzi mi o to, żeby przesunięcie było jednakowe dla ekranów monitorów 
>> szerokokątnych i zwykłych monitorów notebookowych i np. starych crt i było 
>> umieszczone w tej samej odległości od krawędzi div`a. Chodzi głównie o 
>> umiejscowienie banerów na stronie dokładnie w tym samy miejscu nieważne 
>> jaki jest to monitor i jaka rozdzielczość monitora.
>>
>> Proszę o pomoc
>> netman
>>
> 
> Aha zapomniałem napisać, że jeśli istnieje jakiś sposób to proszę pomóżcie z 
> przykładowym kodem:)
> 
> Pozdrawiam
> netman 
> 
> 

Styl CSS plus przesunięcie obliczane z rozdzielczości ekranu.
W zdarzeniu onload dla tagu body:

1.oblicz DPI ekranu użytkownika
2.przelicz np na milimetry lub cale
3.wstaw argument style z obliczoną pozycją.

Do obliczenia DPI skorzystać można z własciwosci obiektu screen lub 
sposobem wstawiając pusty div o wymiarach 1 cal na 1 cal i pobierajac 
jego wymiar w punktach lub szacunkowo z szerokosci ekranu dla typowych 
rozdzielczosci(72,96,120 dpi).Ten trzeci element jest najmniej dokładny 
i sam te szerokosci powstawiałem. Ale u mnie na dwu monitorach działało. 
Myslę że nie trzeba aż tak sie zabezpieczać(3 krotnie).Bo obiekt screen 
ma własciwosci odpowiednie do tego zadania. Ale czy zabezpieczy to 
wszystkie przegladarki ??? nie wiem.

ja obliczam tak :
var screenw = screen.deviceXDPI;
	if (screenw==undefined)
	screenw = getdivDPI();
	if (screenw==undefined)
     screen.width>=1399 ? 120 : (screen.width>799) ? 96 : 72 ;

fragment stylu dla sztuczki z obliczaniem dpi :

     #divdpi {
   height: 1in;
   left: -100%;
   position: absolute;
   top: -100%;
   width: 1in;
}

tag :
<body>....
<div id="divdpi"></div>
...

funkcja :

function getdivDPI() {
   return document.getElementById("divdpi").offsetHeight;
}

pozdr
AK
Re: przesunięcie obiektu względem krawędzi body
#49498
Author: Winetou
Date: Mon, 09 Nov 2009 16:28
25 lines
1878 bytes
Netman pisze:
> Witam!
> 
> Czy istnieje możliwość przesunięcia obiektu np. div`a względem krawędzi 
> znacznika <body>.
> Chodzi mi o to, żeby przesunięcie było jednakowe dla ekranów monitorów 
> szerokokątnych i zwykłych monitorów notebookowych i np. starych crt i było 
> umieszczone w tej samej odległości od krawędzi div`a. Chodzi głównie o 
> umiejscowienie banerów na stronie dokładnie w tym samy miejscu nieważne jaki 
> jest to monitor i jaka rozdzielczość monitora.
> 
> Proszę o pomoc
> netman 
> 
> 
eee... czy ja dobrze rozumiem ?

Chodzi o to aby coś w divie było przesunięte zawsze o tę samą odległość ?

No to może style CSS: position: absolute; i left top right bottom, a dla 
diva position: relative. Jeśli dobrze rozumiem problem to nie widzę tu 
potrzeby wykorzystania jakiegokolwiek javascriptu.

Pozdrawiam,
Łukasz Wittbrodt
Re: przesunięcie obiektu względem krawędzi body
#49499
Author: Andrzej Kmicic
Date: Tue, 10 Nov 2009 16:44
9 lines
1174 bytes
Winetou pisze:
  Jeśli dobrze rozumiem problem to nie widzę tu
> potrzeby wykorzystania jakiegokolwiek javascriptu.


Fakt można CSS w jednostkach nie związanych z pikselami ale tu przecież 
grupa wykorzystująca JS, wiec podałem sposób dla JS.
pozdr
AK
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads