Вот демо: https://codepen.io/jchi2241/pen/dEzMZo?editors=1100
Я скрываю <ul>
с максимальной высотой 0, когда элемент ввода родного брата не отмечен, и устанавливаю максимальную высоту <ul>
на 10em, когда отмечен. Я использую максимальную высоту специально для анимации открытия и закрытия для каждого раздела.
Однако я понял, что <ul>
занимает заметное количество места ниже <label>
, даже когда максимальная высота равна 0. Это очевидно, если вы удалите элемент <ul>
или набор <ul>
- position: absolute
или display: none
, вынимающие его из потока DOM. Я не хочу использовать ни один из методов, так как это не позволит использовать анимацию перехода.
Итак, чтобы вернуться к первоначальному вопросу - что заставляет <ul>
занимать пространство ниже <label>
, даже если его высота установлена в 0? Какой идеальный способ избавиться от этого пространства при сохранении анимации перехода?