Aby lepiej zbalansować stronę, nad którą pracuję, chciałbym znaleźć sposób na zwiększenie górnego marginesu DIV w zależności od rozdzielczości ekranu. Jaki jest mój najlepszy sposób, aby ustawić te wymiary z jQuery lub JavaScript?jQuery Regulacja wysokości ekranu rozdzielczości
30
A
Odpowiedz
71
Aby uzyskać rozdzielczość ekranu w JS używać screen
obiekt
screen.height;
screen.width;
oparciu o wartości, które można obliczyć margines cokolwiek ci pasuje.
4
Zapoznaj się z jQuery dimensions plugin
22
Oto przykład, w jaki sposób wyśrodkować obiekt w pionie z jQuery:
var div= $('#div_SomeDivYouWantToAdjust');
div.css("top", ($(window).height() - div.height())/2 + 'px');
ale można łatwo zmienić na cokolwiek są Twoje potrzeby.
5
Innym przykładem pionowo i poziomo środku div lub dowolnego obiektu (ów):
var obj = $("#divID");
var halfsc = $(window).height()/2;
var halfh = $(obj).height()/2;
var halfscrn = screen.width/2;
var halfobj =$(obj).width()/2;
var goRight = halfscrn - halfobj ;
var goBottom = halfsc - halfh;
$(obj).css({marginLeft: goRight }).css({marginTop: goBottom });
2
var space = $(window).height();
var diff = space - HEIGHT;
var margin = (diff > 0) ? (space - HEIGHT)/2 : 0;
$('#container').css({'margin-top': margin});
Właśnie uczę Javascript; Czy przypadkiem nie pokazałeś mi podejścia, które podjąłbyś, by obliczyć wysokość i dodać do niej pewien margines? Identyfikator elementu div, który dostosowuję, to "port-cont". –
Cóż, masz podaną wysokość ekranu, musisz odjąć coś dla menu przeglądarki, paska stanu itp. Trudno powiedzieć, ile by to było, ponieważ zależy to od przeglądarki. Następnie powinieneś eksperymentować z różnymi rozmiarami swoich elementów, dopóki nie poprawisz wyglądu witryny. Jeśli mogę zasugerować, nie wiem, czy JS jest tym, czego szukasz. Możesz po prostu ustawić wysokość w arkuszu stylów CSS na pewną wartość procentową, która zawsze będzie ustawiona poprawnie bez czytania rozdzielczości ekranu w JS. – RaYell
http://api.jquery.com/height/ – foxybagga