Given an element with unknown margin-left, how to increase its margin-left at a number say 100px?
For example:
assuming the original margin-left is 100px
the expected result is 100px + 100px thus 200px finally.
Answer: You can set the margin property to auto to horizontally center the element within its container. The element will then take up the specified width, and the remaining space will be split equally between the left and right margins.
Set a Single CSS Property and Value The css() method can take a property name and value as separate parameters for setting a single CSS property for the elements. The basic syntax can be given with: $(selector). css("propertyName", "value");
$('#element-id').css('margin-left', function (index, curValue) {
return parseInt(curValue, 10) + 100 + 'px';
});
curValue will include 'px' at the end, so you'll end up with NaN
or 100px100px
as your result without using parseInt
first.
A quick/terse way to do this:
$('#IDHere').animate({marginLeft: '+=100px'}, 0);
Here's a quick example of this. The 0
makes this happen in a single frame, if you actually want to animate it, change the 0
to the number of milliseconds you want, like this.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With