최대 높이를 설정 해제하는 방법?


161

max-heightCSS 규칙에서 이전에 설정 한 경우 속성을 기본값으로 재설정하는 방법 은 무엇입니까? 작동하지 않습니다.

pre {
  max-height: 250px;
}

pre.doNotLimitHeight {
  max-height: auto; // Doesn't work at least in Chrome
}

답변:


306

다음으로 재설정하십시오 none.

pre {
  max-height: 250px;
}

pre.doNotLimitHeight {
  max-height: none;
}

참고


이것은 작동하지 않는다는 점에 유의하십시오 min-height( none허용되지 않으며 값이 무시되지 않습니다).
Jon

1
@Jon 맞습니다. 기본값 min-height은 0이지만 "Infinity"는 CSS에서는 중요 하지 않으므로 max-height기본값은 none입니다.
Madara의 유령

24

다음 CSS를 사용하여 max-height 속성을 지울 수 있습니다.

max-height:none; 

3

당신처럼 스타일 요소를 자바 스크립트를 사용하는 경우 그냥 참고 $el.style.maxHeight = '50px';사용 $el.style.maxHeight = 'none';"재설정"하지 않습니다 또는 "제거"를 50px, 단순히 그것보다 우선합니다. 즉, 요소를 사용하여 요소의 최대 높이를 "재설정"하려고하면 요소 의 속성에 값을 $el.style.maxHeight = 'none';적용하여 해당 요소와 일치하는 CSS 선택 규칙의 다른 유효한 속성을 재정의합니다 .nonemax-heightmax-height

예를 들면 :

styles.css

.set-max-height { max-height: 50px; }

main.js

document.querySelectorAll('.set-max-height').forEach($el => {
  if($el.hasAttribute('data-hidden')){
    $el.style.maxHeight = '0px'; // Set max-height to 0px.
  } else {
    $el.style.maxHeight = 'none'; // 'Unset' max-height according to accepted answer.
});

실제로 인라인 스타일을 "설정 해제"하려면을 사용해야합니다 $el.style.removeProperty('max-height');.

단일 요소가 아닌 전체 스타일 규칙에 대해이 작업을 완료하려면 먼저 수정하려는 규칙을 찾은 다음 removeProperty해당 규칙 에서 함수 를 호출해야 합니다.

for(let i = 0; i < document.styleSheets[0].cssRules.length; ++i){
  if(document.styleSheets[0].cssRules[i].selectorText == '.set-max-height'){
    document.styleSheets[0].cssRules[i].style.removeProperty('max-height');
    break;
  }
}

원하는 객체 StyleSheetCssRule객체를 찾을 수 있지만 간단한 응용 프로그램의 경우 위의 것으로 충분할 것입니다.

이것을 답변으로 넣은 것은 유감이지만, 50 명의 담당자가 없으므로 의견을 말할 수 없습니다.

건배.


1

둘 중 하나를 사용하십시오

max-height: none;

또는

max-height: 100%;

참고 : 두 번째는 포함 블록의 높이와 관련이 있습니다.


1
죄송하지만이 값이 잘못되었습니다. 최대 높이 : 100 %는 포함하는 블록의 높이와 관련이 있습니다. 따라서 실제 최대 높이가 제한됩니다.
BiAiB

1

당신이 사용할 수있는

max-height: unset;

이 속성은 부모로부터 상속하는 경우 속성을 상속 된 값으로 재설정하고 (키워드 상속으로 작동) 상속하지 않는 경우 속성을 초기 값으로 재설정합니다 (키워드 초기 값으로 작동).

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