Для контекста: я считаю, что этот код в настоящее время работает только в Chrome, поскольку это относительно новый CSS.
Я не уверен, является ли это ошибкой или я плохо понимаю CSS/браузеров/документа.
Я использовал комбинацию интерполяции размера и псевдоэлемента ::details-content, чтобы переход открытия элемента сведений.
I заметил, что последний элемент вообще не переходит, если сразу за ним нет чего-то. См. минимальный пример ниже.
В приведенном ниже примере все детали переходят должным образом, однако, если я удалю последний элемент div, последние детали перейдут неправильно.
details {
interpolate-size: allow-keywords;
}
details::details-content {
block-size: 0;
transition: block-size 0.2s ease-in-out, content-visibility 0.2s;
transition-behavior: allow-discrete;
}
details[open]::details-content {
block-size: auto;
}
summary
content
summary
content
summary
content
end
Подробнее здесь: https://stackoverflow.com/questions/793 ... s-expected