In section 10.6.3 Block-level non-replaced elements in normal flow when 'overflow' computes to 'visible', it seems that when calculating height, the bottom edge of the content area is well-defined (e.g., the bottom edge of the last line box, the bottom edge of the bottom (possibly collapsed) margin of its last in-flow child, etc.), but the top content edge is not. It's simply stated that the element's height is the distance from the “top content edge”:
The element's height is the distance from its top content edge to the first applicable of the following:
Yes, but what determines the position of the top content edge? Doesn't this need to be specified to determine the height (or am I missing something)? For example, if the box establishes an inline formatting context with one or more lines, then shouldn't its height be specified as the top edge of the first line box to the bottom edge of the last line box rather than its top content edge (where is that?) to the bottom edge of the last line box.