let skillList = $('#Skills>ul>li');
skillList.on('click',expandSkillList);
function expandSkillList(event){
let firstChild = $(this).children(':first');
firstChild.toggleClass('minimized');
}
#Skills{
background-color:darkgrey;
color:#fff;
}
ul{
text-align:left;
}
li ul{
height:100%;
transition:height 0.5s;
overflow-y:hidden;
}
ul.minimized{
height:0px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<section id="Skills">
<h1>SKILLS</h1>
<ul>
<li>LANGUAGE
<ul class="minimized">
<li>HTML5</li>
<li>CSS3</li>
<li>JAVASCRIPT</li>
<li>PHP</li>
</ul>
</li>
<li>FRAMEWORK/LIBRARY
<ul class="minimized">
<li>JQUERY</li>
<li>BOOTSTRAP</li>
<li>REACTJS</li>
</ul>
</li>
<li>TOOL
<ul class="minimized">
<li>WORDPRESS</li>
</ul>
</li>
</ul>
</section>
Это мой фрагмент кода, и переход в приведенном выше коде не работает. Это работает нормально, если я изменяю 100% на какую-то единицу пикселя, но как сделать переход, когда я хочу перейти с высоты 0 на высоту 100%?
Как мне высоту перехода: 0; по высоте: авто; используя CSS?
Я прочитал этот пост и попробовал max-height вместо height тоже, но не работает
let skillList = $('#Skills>ul>li');
skillList.on('click',expandSkillList);
function expandSkillList(event){
let firstChild = $(this).children(':first');
firstChild.toggleClass('minimized');
}
#Skills{
background-color:darkgrey;
color:#fff;
}
ul{
text-align:left;
}
li ul{
max-height:100%;
transition:max-height 0.5s;
overflow-y:hidden;
}
ul.minimized{
max-height:0px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<section id="Skills">
<h1>SKILLS</h1>
<ul>
<li>LANGUAGE
<ul class="minimized">
<li>HTML5</li>
<li>CSS3</li>
<li>JAVASCRIPT</li>
<li>PHP</li>
</ul>
</li>
<li>FRAMEWORK/LIBRARY
<ul class="minimized">
<li>JQUERY</li>
<li>BOOTSTRAP</li>
<li>REACTJS</li>
</ul>
</li>
<li>TOOL
<ul class="minimized">
<li>WORDPRESS</li>
</ul>
</li>
</ul>
</section>
и, пожалуйста, не jquery, javascript решение ТОЛЬКО CSS