jQuery style not being applied in Safari

css, jquery, macos, safari

Solution

I faced this problem once and i end up using addClass and removeClass on elements parent container.

try this

$("#element").css('left', '103px').parent().addClass("dummyClass").removeClass("dummyClass");

if that doesn't work follwoing will work for sure.

$("#element").css('left', '103px');
$("body").addClass("dummyClass").removeClass("dummyClass");

the problem is sometime safari doesn't redraw the page when we change CSS so we need to force redrawing

Problem

I have an absolutely positioned element that I move with the help of jQuery using the CSS propertly 'left'. ``` $("#element").css('left', '103px'); ``` In Firefox this works as expected. However in Safari I can see the style appearing in the Web Inspector under element.style, but the style isn't updated. If I disable (and re-enable) any matched CSS-rules (even those not applied directly to my div) the style being applied with jQuery is rendered. I'm running Safari 5.0.6 on an old PowerMac, with jQuery 1.7.2.

Original source