2011-11-03 20 views
6

Keşfettiğim diğer tüm yanıtlar, yalnızca özniteliğin ayarını kaldırır ve özniteliği tamamen kaldırmaz. Bir elemanı mutlaktan sabit pozisyona değiştiriyorum. Doğru konumlandırma özniteliğini kaldırmalı ve kenar boşluğu ile değiştirmeliyim, böylece öğe ana DIV'sinin içinde konumlandır. Doğru öznitelik kaldırılmazsa, öğe ekranın sağına kadar gider ve DIV'nin sağına değil, ihtiyacım var. Bunu nasıl başaracağınıza dair bir öneride bulunabilir mi? Bu işe o autoJquery'yi kullanarak CSS özniteliğini kaldırın

cevap

13

varsayılan değerine auto

$(element).css('right', 'auto'); 
+1

PS - CSS spec sizin için bu cevap olabilirdi - http://www.w3.org/TR/CSS21/visuren.html#propdef-right – mrtsherman

+0

Bu harika çalıştı! Teşekkür ederim. – user981053

+1

Açık kodlanmış bir varsayılan değerden daha iyi, diğer stil sayfası kurallarının uygun şekilde uygulanmasına izin veren boş bir dizedir (@ Derek tarafından gösterildiği gibi). – Phrogz

2
$('div').css({'right' : '', 'margin-right' : '100px'}); 

olarak ayarlamayı deneyin margin-right.

$('div').css({'right' : '0px', 'margin-right' : '100px'}); 
0

varsayılan değeri 0px ve ardından ayarlamak için right ayarlamayı deneyin var sağa ayarlamayı deneyin etmezse

0

Sen Bence kodu

 $.fn.removeCss=function(toDelete) { 

      var props = $(this).attr('style').split(';'); 
      var tmp = -1; 

      for(var p=0; p<props.length; p++) { 
       if(props[p].indexOf(toDelete) !== -1) { 
        tmp=p 
       } 
      } 

      if(tmp !== -1) { 
       props.splice(tmp, 1); 
      } 

      return $(this).attr('style',props.join(';')); 
     } 

example usage: 
$(selector).removeCss('color'); 
1

en temiz yolu takip deneyebilirsiniz sadece boş bir çeşit üzerine yazmak yerine, eleman en CSSStyleDeclaration tamamen özelliğini kaldırmaktır/sıfır/default değeri:

$(".foo").prop("style").removeProperty("right"); 
$(".foo").prop("style").removeProperty("background-color"); 
İlgili konular