Ответы:
min-height
0 равно 0, но, поскольку «Бесконечность» не является чем-то в CSS, по max-height
умолчанию используется none
.
Просто обратите внимание, что если вы используете JavaScript для стилизации элемента, как $el.style.maxHeight = '50px';
при использовании $el.style.maxHeight = 'none';
не будет «сбрасывать» или «удалять» 50px
, он просто переопределит его. Это означает, что если вы попытаетесь «сбросить» максимальную высоту элемента, используя $el.style.maxHeight = 'none';
его, вы примените none
значение к max-height
свойству элемента, переопределив любые другие допустимые max-height
свойства в правилах выбора CSS, которые соответствуют этому элементу.
Пример:
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;
}
}
Вы можете найти объекты StyleSheet
и CssRule
как угодно, но для простого приложения я уверен, что вышеприведенного будет достаточно.
Извините, что поставил это как ответ, но у меня нет 50 представителей, поэтому я не могу комментировать.
Приветствия.
Ты можешь использовать
max-height: unset;
который сбрасывает свойство к его унаследованному значению, если вы наследуете от его родителя (будет работать как наследование ключевого слова), а если вы не наследуете, оно сбрасывается к его начальному значению (будет работать как ключевое слово initial).
min-height
(none
не разрешено и приводит к тому, что значение не будет переопределено).