Не знаю, поможет ли это (сейчас я оставил макеты на основе таблиц), но для решения аналогичной проблемы, используя прямые div
s, вы можете сделать то же самое, используя правило line-height
.
<div id="tableRow">
<div id="leftCell"><img src="mylogo" /></div>
<div id="middleCell"> </div>
<div id="rightCell">User Name Here</div>
</div>
Ваш CSS будет создан для установки ширины / высоты и т. Д., Что, я думаю, вам не понадобится для таблицы, а для вашего "rightCell" вы бы установили высоту строки такой же, каквысота строки:
#rightCell
{
height: 30px;
line-height: 30px;
}
В таком случае текст центрируется по вертикали в пространстве строк, что, поскольку оно равно высоте, создает впечатление, что он тоже находится в центре элемента.
Теперь, как я уже сказал, я НИКОГДА не пробовал это на ячейке таблицы, однако любой современный браузер должен позволить вам изменить свойство display на block
или inline-block
, используя:
display: block;
Замена блока для любых других типов, где это необходимо.Это установит тип отображения ячейки как div
(или диапазон, или какой-либо другой элемент), но я НЕ ЗНАЮ, какой эффект это окажет на таблицу.
Обратите также внимание,что я не обращаюсь к старым браузерам Как IE6 здесь, чтобы сделать эту работу по всем направлениям вам, возможно, придется сделать некоторые хаки для старых браузеров, если требуется поддержка.