Ширина ячейки таблицы в IE7 с таблицей "table-layout: fixed" - PullRequest
0 голосов
/ 14 февраля 2011

У меня есть таблица, которую я использую в качестве панели инструментов на веб-странице.Он прекрасно работает во всех браузерах, кроме IE7.Проблема в том, что она расширяет таблицу, чтобы она соответствовала содержимому (выталкивая содержимое за пределы экрана), если я не укажу «table-layout: fixed» в CSS.Когда я устанавливаю фиксированный макет таблицы, он делает все ячейки одинакового размера, но я хочу, чтобы их размер автоматически соответствовал содержанию (и переносу слов при необходимости).Установка «width: auto» для ячейки ничего не делает.

Вот HTML:

<table id="ToolbarTable" cellspacing="0px">
    <tr>
        <td class="ToolbarCell" align="center">
            Button1
        </td>
        <td class="ToolbarCell" align="center">
            Button2 Button3 Button4
        </td>
        <td class="ToolbarCell" align="center">
            Button5 Button6 Button7 [Button8 Button9 - not always visible]
        </td>
    </tr>
</table>

И CSS:

#ToolbarTable
{
    margin-top: 1px;
    width: 100%;
    min-height: 24px;

    table-layout: fixed;
    word-wrap: break-word;
}

#ToolbarTable td
{
    min-width: 50px;
    width: auto;
    border: solid 1px #000000;
}

В IE7,Как сделать таблицу определенной ширины (и сделать так, чтобы IE7 ее обрабатывал), при этом позволяя ширине ячеек таблицы автоматически изменять размер?

РЕДАКТИРОВАТЬ: добавлены примеры кода.

Ответы [ 3 ]

2 голосов
/ 14 февраля 2011

Попробуйте использовать min-width в связи с набором width.Я считаю, что эта комбинация должна работать с IE 7.

0 голосов
/ 14 февраля 2011

Хотя у меня были пробелы между кнопками, у меня также было несколько &nbsp; пробелов, и это препятствовало переносу слов и приводило к тому, что ширина таблицы превышала указанную мной ширину. Удаление &nbsp; между кнопками устранило проблему. Каждый &nbsp; был окружен пробелом (я просто хотел добавить больше пробела), и все другие браузеры правильно делали разрыв строки, но IE7 должен либо удалить лишние пробелы, либо предположить, что они должны быть &nbsp; пробелами.

0 голосов
/ 14 февраля 2011

Вам необходимо установить ширину таблицы для всей таблицы.
И в противном случае есть только один вариант - установить ширину таблицы вручную (легко собрать с помощью инструментов разработчика, которые включены в большинство современных браузеров (IE8 +, FireFox, Chrome,Safari и т. Д.), Вы можете прочитать ширину там).Иначе я бы не узнал.

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