Высота вьюпорта - это как раз и есть динамическая высота окна. При этом невозможно предсказать его максимальные размеры, даже зная разрешение (потому как высота панелей и прочих элементов управления может быть разная). При этом нужно учитывать, что сама высота окна при открытии страницы может быть не максимальная - браузер может быть не развернут на весь экран.
Как заляпуху можно устанавливать высоту в 100% в пикселях (clientHeight) и потом отслеживать изменение размера и неуменьшать её. Но это все равно косяк, так как не учитывает случая поворота экрана (а такое бывает даже на стационарных компьютерах например с поворотными мониторами) и перенос окна между мониторами с разными разрешениями или чего-нибудь типа изменения масштаба.
Надо искать другое решение исходной задачи.