извиняюсь, наверное от жары уже мозги сварились. Гугл и мысли вообще по этому поводу ничего не дали. Без js не обойтись. В js подход, как и в calc. Считается отступ от верхнего края родителя.
Ну глянь на пен, что я кинул. У листа есть скролл. А контейнеру нужно задать overflow-x: hidden, чтобы у листа работало height: auto и не выезжало за пределы контейнера.
Эх. Это не учел. Position relative-absolute не работает с элементами табличного лэйаута.
Тогда тут 2 варианта:
1) JS
2) Внутри этих элементов добавить div, сделав его по размеру таким же. И ему уже задать position relative и от него создавать border-ы с position: absolute.