UIWebView: ширина таблицы влияет на размер текста - PullRequest
1 голос
/ 08 февраля 2012

Я столкнулся с довольно странной ошибкой в ​​UIWebView.Если я создаю таблицу, и одна из <td>: s слишком длинная (я думаю, она длиннее ширины экрана), размер шрифта увеличивается!

Вот пример приложения, которое я создал вместечтобы продемонстрировать это.

Этот фрагмент 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

Верхний стол увеличивается!ЕДИНСТВЕННАЯ вещь, которая отличается, состоит в том, что первая строка длиннее в верхней таблице.Это делает размер шрифта для всей таблицы больше!

Я пытался использовать <nobr> вместо CSS, и это дает тот же результат.Установка размера шрифта с помощью встроенных стилей также не работает.

Я также получаю тот же результат, если установить ширину <td> на размер, превышающий размер экрана, поэтому кажется, что есть проблема с автоматическим изменением размера.

Кто-нибудь знает обходной путь для этого?!

ОБНОВЛЕНИЕ

Вот мой проект, если вы хотите попробовать его для себя: http://cl.ly/2B3r1F2C3I0C2D1S2X3s

ОБНОВЛЕНИЕ 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';
}

Это не имеет никакого эффекта.

Ответы [ 2 ]

1 голос
/ 10 мая 2012
var elements = document.getElementsByTagName('td');
for(**var** i = 0; i < elements.length; i++) {
    elements[i].style.fontSize = '18px';
}
0 голосов
/ 09 февраля 2012

Я не вижу размеров шрифта.Я бы попробовал вручную установить размеры шрифта с помощью CSS или HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...