jQuery에서 CSS 속성을 제거하는 방법


197
if(prev_clicked)
{   
    $("#accordion li a.category").css('background-image', 'url("img/off_all_channel.png")');                    
    $("#accordion li a.comment").css('background-image', 'url("img/on_all_online.png")');                   
    $(".icha0").removeProperty("background-color");
    $(".icha0").removeProperty("opacity");
}
else
{   
   $(".icha0").css("background-color","#D5D5D2");
   $(".icha0").css("opacity","0.70");
}

추가 한 두 개의 CSS 속성을 제거하려고하는데 작동하지 않는 것 같습니다. 그래요?


1
또한 여기에 게시하기 전에 Google을 사용해보십시오. 여기에 게시 한 정확한 제목의 첫 번째 결과가 허용 가능한 결과를 반환 할 것입니다. 나는 당신이있어 아무 생각이없는 .removeProperty()에서합니다.
Christian

1
@Christian Varga, 재밌는 점은 이제이 질문을 게시 했으므로 첫 번째 Google 결과입니다. 두 번째 결과는 또 다른 올바른 스택 오버플로 답변입니다. 세 번째는 "removeProp ()"이고 네 번째는 "removeAttr ()"이며 둘 다 잘못되었습니다.
로켓은 빠른

답변:


369

다음을 통해 제거 할 수 있습니다.

$(".icha0").css({ 'background-color' : '', 'opacity' : '' });

26
대답하기에는 너무 늦었지만 이것이 중요하다고 생각합니다. "style"속성에 정의 된 요소의 속성 만 제거한다는 점을 명심해야합니다. 수업이나 이와 유사한 수업에 배정 된 경우에는 아무런 영향을 미치지 않습니다.
José Carlos

15
클래스를 통해 속성 집합을 제거해야하는 경우 '대신에'inital '로 설정할 수 있습니다
James Brierley

82

다음 .css()과 같이 CSS 속성을 제거 하는 데 사용할 수 있습니다 .

$(".icha0").css("background-color","");
$(".icha0").css("opacity","");

jquery 문서에서 언급했듯이 :

스타일 속성 값을 빈 문자열로 설정하면 (예 : $ ( '# mydiv'). css ( 'color', '')) 해당 속성이 요소에 이미 적용된 경우 해당 속성을 제거합니다.


16
jqeury css에서 : "그러나 CSS 나 규칙을 적용한 스타일 시트 나 <style> 요소는 제거하지 않습니다"
eggmatters

37

인라인 CSS 속성을 제거하려면 다음을 사용하십시오.

$('.className').css({propertyName: ''});

요소의 전체 인라인 스타일을 제거하려면 다음을 사용하십시오.

$('.className').removeAttr('style');

스타일 (별도 파일) 사용에서 CSS 속성을 제거하기위한이 제안을 찾았습니다.

$ ( '. className'). style.propertyName = '';

그러나 나는 그것을 전혀 작동시킬 수 없었기 때문에 여기에 참고로 삼고 있습니다.


4
$ ( '. className'). style.propertyName = ''; $ ( '. className') [0] .style.propertyName = ''이어야합니다. -그러나 그것은 전혀 말도 안됩니다
SuperNova

20

속성을 다시 공백으로 설정할 수 있습니다.

$(".icha0").css("background-color","");

또는 CSS 파일에 정의 된 클래스를 사용하도록 코드를 변경할 수 있습니다.

$(".icha0").addClass('properties'); 
$(".icha0").removeClass('properties');

중첩 된 3D 원근법으로 인해 들쭉날쭉 한 모서리를 제거하는 데 도움이됩니다. 앤티 앨리어스 문제를 해결하기 위해 관점 중 하나를 제거하는 데 좌절했습니다.이 게시물은 하루를 절약했습니다! 감사합니다!
Richard Yan

4

이 문제가 발생했지만 OP를 충족시키는 솔루션을 보지 못했습니다. 대부분의 솔루션은 가치가없는 전체 스타일 속성을 제거하는 것이 좋습니다.

jQuery의 prop 메소드를 사용했습니다.

var styleObject = $('my-selector').prop('style'); 

styleObject.removeProperty('background-color');

3

DOM 요소에 적용된 적용된 CSS 스타일 클래스를 직접 제거하거나 요소에서 적용된 CSS 스타일을 제거하는 두 가지 방법이 있습니다.

//Remove the class associated with element

$('#ID').removeClass("cssClass");

//Remove the CSS style from DOM element

$('p').css({"color":""});

3
이 답변에는 새로운 것이 없으며 다른 답변을 반복하는 것은 의미가 없습니다.
Shadow Wizard is Ear For You

2

이상적인 옵션보다 적은 대안이 있지만 다양한 문제를 해결할 수 있습니다. inherit 값으로 요소에 새 클래스를 추가하십시오 .

CSS

.clearCSS {
    background-color: inherit !important;
}

jquery

$(".icha0").addClass('clearCSS'); 

2

이것은 말 그대로이 답변 의 복사 붙여 넣기 이며 이전에 실행 된 함수에서 jQuery로 추가 한 CSS 스타일을 지우는 데 사용합니다.

인라인 CSS 속성을 제거하려면 다음을 사용하십시오.

$('.className').css({propertyName: ''});   

요소의 전체 인라인 스타일을 제거하려면 다음을 사용하십시오.

$('.className').removeAttr('style');

또는 ID 별 :

$('#idName').removeAttr('style');

1

JQuery에서 모든 CSS 속성을 제거하려면 다음 코드를 사용할 수 있습니다.

    $(".selector").removeClass().removeAttr('style');

감사.


1

당신이해야하는 경우 제거 가 아니라 업데이트 간단히 사용할 수있는 특정 속성 removeProp 하지 removeProperty를 :

$(".icha0").removeProp("background-color");
$(".icha0").removeProp("opacity");
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.