Hi,
I am still a little unclear on what you are trying to do here:)
In your example you state that the div with height:16px will fit its text but in fact that is the div that will break should a user have selected different sized text to the one that you think they may be using (you ultimately have no control over what size text a user will use). Then on the other hand the div without a height is the one that will work in al situations and will not crop or allow text to overflow.
You seem to have this completely the wrong way around.
It is also bad practice to set the body font-height to 16px because that also goes against user preferences. Just leave it at whatever default it maybe and let your design accommodate accordingly.
Your other question about creating a page that just fits the viewport is also illogical unless its a very simple gallery site with virtually no text. It’s easy enough to make a div fill the viewport but the problem is that your content may not fit into the viewport of the device that is accessing your page.
It sounds to me as though you want a page that just fills the viewport and you want the text to scale smaller and larger depending on the viewport size but this is a flawed approach and not one used in professional web design.
You can scale he text using the new vh units but you often end up with text too small to read at smaller sizes.
e.g.(Modern browsers only)
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
<style>
html, body {
margin:0;
padding:0;
height:100%
}
p {
margin:0 0 1em;
font-size:2.5vmin
}
</style>
</head>
<body>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec interdum facilisis urna non efficitur. Maecenas augue nisi, tristique quis volutpat non, pulvinar et neque. Duis ut auctor ligula, id efficitur lectus. Nulla sed ultrices lorem. Maecenas hendrerit vehicula nisl, in posuere lacus tincidunt non. Praesent odio magna, vulputate vitae lobortis ut, euismod nec augue. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis tortor interdum, accumsan lacus vitae, interdum nibh. Pellentesque sed congue ipsum. Nunc sit amet lacinia nisi. Curabitur commodo nec lectus in vehicula. Fusce congue suscipit placerat. In at ultricies quam, ac condimentum elit. Donec orci lacus, gravida sed tellus eu, aliquet vulputate orci. Nulla eleifend pharetra dui, eleifend mollis nunc fringilla non</p>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec interdum facilisis urna non efficitur. Maecenas augue nisi, tristique quis volutpat non, pulvinar et neque. Duis ut auctor ligula, id efficitur lectus. Nulla sed ultrices lorem. Maecenas hendrerit vehicula nisl, in posuere lacus tincidunt non. Praesent odio magna, vulputate vitae lobortis ut, euismod nec augue. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis tortor interdum, accumsan lacus vitae, interdum nibh. Pellentesque sed congue ipsum. Nunc sit amet lacinia nisi. Curabitur commodo nec lectus in vehicula. Fusce congue suscipit placerat. In at ultricies quam, ac condimentum elit. Donec orci lacus, gravida sed tellus eu, aliquet vulputate orci. Nulla eleifend pharetra dui, eleifend mollis nunc fringilla non</p>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec interdum facilisis urna non efficitur. Maecenas augue nisi, tristique quis volutpat non, pulvinar et neque. Duis ut auctor ligula, id efficitur lectus. Nulla sed ultrices lorem. Maecenas hendrerit vehicula nisl, in posuere lacus tincidunt non. Praesent odio magna, vulputate vitae lobortis ut, euismod nec augue. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec quis tortor interdum, accumsan lacus vitae, interdum nibh. Pellentesque sed congue ipsum. Nunc sit amet lacinia nisi. Curabitur commodo nec lectus in vehicula. Fusce congue suscipit placerat. In at ultricies quam, ac condimentum elit. Donec orci lacus, gravida sed tellus eu, aliquet vulputate orci. Nulla eleifend pharetra dui, eleifend mollis nunc fringilla non</p>
</body>
</html>
It’s not an approach I like although it could be tidied up with media queries.