2013-04-18 51 views
1

嗨我有我的網站設計的移動設備。適合HTML頁面文本的窗口寬度

我在我的應用程序中使用WebView來顯示此網站。

當用戶放大文本時,我得到水平滾動條。相反,我想要的是,頁面中的文本應該換行到下一行,文本應該適合屏幕寬度。

應該使用什麼html5,css3屬性來包裝文本以適應移動設備的屏幕?

+0

一些代碼將是很好的 – 1337holiday 2013-04-18 06:14:34

回答

2

在蘋果的網站,它說

用戶還可以放大和縮小使用手勢。當放大並且輸出時,用戶更改視口的比例,而不是視口的大小。因此,平移和縮放不會更改網頁的佈局 。圖3-8顯示了用戶放大 以查看詳細信息時的相同網頁。

所以我會認爲這不是東西,這將是可能的,除非你可以操縱規模

+0

是否可以使用html5和css來做些事情,使其與設備/平臺無關? – Sanat 2013-04-18 07:35:12

+0

我認爲無論使用哪種平臺,我都會使用縮放功能,但我不記得看到任何以縮放桌面瀏覽器的方式縮放的網站,您可以完全禁用縮放,然後你也許可以使用其中一個javascript手機手勢庫來編程捏手勢來改變CSS來擴展一切的大小,這將工作,我認爲 – dt192 2013-04-18 07:43:52

0

在你的代碼,你需要實現一個WebViewClient和覆蓋OnScaleChanged方法,它會通知您用戶放大。在此方法中,您需要重新佈局整個WebView。下面的代碼是我如何實現文本回流(注:如果你不想滾動條顯示你將需要更多的代碼,但我沒有添加):

WebView view; 
view = (WebView)findViewById(R.id.webView); 
view.setWebViewClient(new WebViewClient(){ 
    @Override 
    public void onScaleChanged(WebView view, float oldScale, float newScale) { 

     view.getSettings().setLayoutAlgorithm(
       LayoutAlgorithm.NARROW_COLUMNS); //causes the text to reflow to the screen size 
     view.invalidate(); 
     super.onScaleChanged(view, oldScale, newScale); 
    } 
});