2012-02-08 19 views
1

UIWebViewに奇妙なバグがあります。テーブルを作成して<td>:の長さが長すぎると(画面の幅よりも長いと思われます)、フォントサイズが拡大します!UIWebView:テーブルの幅がテキストサイズに影響を与えます

ここでは、これをデモンストレーションするためのアプリの例を示します。

HTMLのこの作品:

<!DOCTYPE html>   
<html> 
    <head> 
     <style type="text/css"> 
      table 
      td 
      { 
       white-space: nowrap; 
      } 
     </style> 
    </head> 
    <body>     
     <table> 
      <tr> 
       <td>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean mi ipsum</td> 
      </tr> 
      <tr> 
       <td>Lorem ipsum dolor sit amet.</td> 
      </tr> 
     </table> 
     <table> 
      <tr> 
       <td>Lorem ipsum dolor sit amet.</td> 
      </tr> 
      <tr> 
       <td>Lorem ipsum dolor sit amet.</td> 
      </tr> 
     </table> 
    </body> 
</html> 

は、この結果を生成します:

iPhone Table strangeness

トップテーブルが拡大します!異なるのは、最初の行がトップテーブルの方が長いことだけです。これにより、テーブル全体のフォントサイズが大きくなります。

私はCSSの代わりに<nobr>を使用しようとしましたが、同じ結果が得られます。インラインスタイルでフォントサイズを設定することもできません。

<td>の幅を画面よりも大きいサイズに設定すると、同じ結果が得られるため、自動サイズ設定が問題のようです。

誰かがこれに対する回避策を知っていますか?あなたは自分自身でそれを試してみたい場合はここで

UPDATE

は私のプロジェクトです: http://cl.ly/2B3r1F2C3I0C2D1S2X3s

UPDATE 2

私は、フォントサイズを設定しようとしたことを言及するのを忘れてしまいましたスローCSS。 <style>とインラインで、さらにはJavaScriptを使用しても、ページがロードされた後で

のようになります。

td 
{ 
    font-size: 18px; 
} 

<td style="font-size: 18px;"> 

var elements = document.getElementsByTagName('td'); 
for(int i = 0; i < elements.length; i++) 
{ 
    elements[i].style.fontSize = '18px'; 
} 

これは効果がありません。

+0

これにネイティブなUITableViewを使用しない理由はありますか? – jmstone617

+0

wysiwyg Web管理ツールを使用して作成された一部のデータチャートでは、UIWebViewが必要です。 – oskob

+0

これは通常のSafariやiPhone 5sのChromeでも発生しています。 XCodeシミュレータでも再現できます。これはモデルに依存しているようです:XCodeでは、iPhone 5s、6,6 Plusおよび6sでは発生しますが、iPhone 6s Plusでは発生しません(すべてiOS 9.0のXCodeシミュレータでテスト済み)。 @Lee GaryのJSハックは、私のテストでは機能しませんでした。実際の5秒でもシミュレーションでも機能しませんでした。 – Jpsy

答えて

0

フォントサイズが指定されていません。私は手動でCSSやHTMLでフォントサイズを設定しようとします。

+0

ああ、フォルゴは私がそれを試したと言って、ポストを更新しています。 – oskob

1
var elements = document.getElementsByTagName('td'); 
for(**var** i = 0; i < elements.length; i++) { 
    elements[i].style.fontSize = '18px'; 
} 
関連する問題