2011-08-22 17 views
24

Voglio riposizionare un intero div e il suo contenuto di circa 10-15 pixel.Come spostare un intero elemento div su x pixel?

Come posso fare questo?

Nota: questo è l'elemento di scorrimento, quindi quando faccio clic su un pulsante il cursore scorre verso il basso. Una volta finito, voglio riposizionarlo di circa 15 pixel.

+0

È necessario indicare se attualmente ha o meno un posizionamento CSS. In questo modo potresti essere in grado di modificarlo (ad es. Con javascript). –

+3

Hai considerato la posizione: relativa; inizio: -15px; '? – Tejs

+0

posso farlo via jquery? – codecompleting

risposta

35
$('#div_id').css({marginTop: '-=15px'}); 

Ciò modificherà il CSS per l'elemento con l'id "div_id"

per ottenere l'effetto che si desidera vi consiglio di aggiungere il codice di cui sopra a una funzione di callback l'animazione (in questo modo il div verrà spostato dopo l'animazione è completa):

$('#div_id').animate({...}, function() { 
    $('#div_id').css({marginTop: '-=15px'}); 
}); 

E, naturalmente, si potrebbe animare la variazione del margine in questo modo:

$('#div_id').animate({marginTop: '-=15px'}); 

Ecco la documentazione per .css() in jQuery: http://api.jquery.com/css/

e qui sono la documentazione per .animate() in jQuery: http://api.jquery.com/animate/

20
$('div').css({ 
    position: 'relative', 
    top: '-15px' 
}); 
1

in CSS aggiungere questo all'elemento:

margin-top: -15px; /*for exact positioning */ 
margin-top: -5%; /* for relative positioning */ 

voi può usare uno dei due per posizionarsi di conseguenza.

Problemi correlati