我正在尝试调整 UIWebView
的大小,使其适合加载页面的全部内容。为此,我获取了 webview 的 ScrollView 的内容高度,并将 webview 的高度设置为该值。
对于内容高度超过 200 的任何内容,这都可以正常工作,并且 View 可以缩放以完全适合页面而无需任何额外空间。但是当内容的高度低于 200 时,webview 似乎达到了某种高度,并且 webView.scrollView.contentSize.height
不会返回任何低于 200 的值。我还有很多的空白。
关于这个主题的帖子很多,但似乎没有一个涉及这个特定问题。当该值低于 200 时返回实际内容高度的最佳方法是什么?
编辑:这是一个 HTML 示例,它应该呈现得非常短,但最终高度为 200pt。
<meta name='viewport' content='width=device-width, user-scalable=yes'>
<html>
<head></head>
<body style='font-family:Helvetica neue; font-size:1.0em; color:#181818; -webkit-font-smoothing: antialiased;'><div>
Here's some example content.
<br/></div>
</body>
最佳答案
请确保您的 HTML
和 BODY
标签没有 min-height
或 高度
css 样式。
然后,您应该使用 JavaScript 获取高度。要获取实际 高度,而不是可滚动 大小,这是某种未知的 UIWebView 决策。
所以 [[webView stringByEvaluatingJavaScriptFromString:@"document.documentElement.offsetHeight"] floatValue]
就可以了。
关于javascript - UIWebView 不正确的内容高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23943262/