728x90
반응형
질문 : .css ()를 사용하여 !important를 적용하는 방법은 무엇입니까?
!important
스타일을 적용하는 데 문제가 있습니다. 난 노력 했어:
$("#elem").css("width", "100px !important");
이것은 아무것도 하지 않습니다. 너비 스타일이 전혀 적용되지 않습니다. cssText
를 덮어 쓰지 않고 그러한 스타일을 적용하는 jQuery 방식이 있습니까 (먼저 파싱해야 함을 의미합니다)?
편집 !important
스타일 인라인으로 재정의하려는 !important
스타일의 스타일 시트가 .width()
!important
스타일에 의해 재정의되기 때문에 작동하지 않습니다. .
또한 이전 값을 재정의 할 값 이 계산 되므로 단순히 다른 외부 스타일을 만들 수 없습니다.
답변
문제는 jQuery가 !important
속성을 이해하지 못하여 발생하므로 규칙을 적용하지 못합니다.
addClass()
를 통해 참조하여 규칙을 적용 할 수 있습니다.
.importantRule { width: 100px !important; }
$('#elem').addClass('importantRule');
attr()
사용하여 :
$('#elem').attr('style', 'width: 100px !important');
그러나 후자의 접근 방식은 이전에 설정된 인라인 스타일 규칙을 설정 해제합니다. 따라서주의해서 사용하십시오.
물론 @Nick Craver의 방법이 더 쉽고 현명하다는 좋은 주장이 있습니다.
위의 attr()
style
문자열 / 속성을 유지하기 위해 약간 수정되었으며 주석에서 falko 가 제안한대로 수정되었습니다.
$('#elem').attr('style', function(i,s) { return (s || '') + 'width: 100px !important;' });
출처 : https://stackoverflow.com/questions/2655925/how-to-apply-important-using-css
728x90
반응형
'프로그래밍 언어 > HTML,CSS,JS' 카테고리의 다른 글
<br/>를 사용하지 않고 CSS에서 줄 바꿈하는 방법 (0) | 2021.07.15 |
---|---|
React.js에서 debounce 수행 (0) | 2021.07.15 |
AngularJS에서 $ scope. $ watch와 $ scope. $ apply를 사용하는 방법 (0) | 2021.07.14 |
div가 나머지 화면 공간의 높이를 채우도록 하는 방법 (0) | 2021.07.13 |
JavaScript를 사용하여 배열에서 객체 제거 (0) | 2021.07.13 |