2010-10-18 3 views
3

Я пытаюсь плавать текст над изображением в третьем столбце первой строки внутри таблицы. У этой ячейки есть <img> внутри нее (обработано срезом psd), и я хочу наложить на нее текст. Я пробовал float: left и position: absolute, но ничего не работает.Float text over image в ячейке таблицы

Любые идеи?

ответ

7

position:absolute в сочетании с z-index должен работать.

Если это возможно в вашем дизайне, вы также можете использовать изображение в качестве фона ячейки таблицы и просто поместить текст в его содержимое.

Редактировать: Также см. this question о проблеме, которую я имел только в IE с текстом поверх изображения.

+0

Смогу ли я по-прежнему поддерживать границу 0 для изображений, если я поменяю ее на фоновое изображение. Все изображения в таблице создают одно большое изображение. – mattgcon

+0

Пока ячейка имеет правильные размеры, она должна работать отлично. Также обратите внимание, что фоновые изображения никогда не имеют границ. – jeroen

+0

Не забудьте удалить таблицу 'border' и' cellspacing', если это необходимо. –

4

Хотя я также рекомендую канонический подход (кладя изображение в качестве фона), вот решение, которое делает это только с позиционированием:

<td style="position:relative;"> 
    <img src="..." style="position:absolute;z-index:1;" /> 
    <div style="z-index:2;position:relative;">your text goes here</div> 
</td> 

Вы можете найти его полезным для дальнейшего использования.