Дизайн и Верстка > Всё о Html
прозрачность фона таблицы с инфой
(1/1)
mad_boy:
бьюсь уже который день и вот с какой проблемой я столкнулся:
есть страница, в качестве бэкграунда одна фиксированная картинка. дальше структура такова: таблица.. ну как обычно футер хеадер - это наважно. а в центральной ячейке таблицы выводится вся инфа соответственно. так вот нужно сделать фон у этой ячейки, причем полупрозрачный.. чтобы видеть основной бэкграунд.
перепробовал кучу вариантов. например свойство filter:
--- Код: ---filter: alpha(opacity=50);
--- Конец кода ---
это во-первых работает тока в IE но даже если добавить аналогичные свойства для Mozilla и Opera еще проблема - вместе с фоном становиться прозрачное и все содержимое этой ячейки (( а это очень критично.
еще реализвал такой вариант: в качестве фона этой ячейки полупрозрачная png картинка размером 1х1 пиксел. туту как раз наоборот - замечательно работает везде кроме IE, так как он не поддерживает полупрозрачность а это тоже не есть гуд. Метод решения проблемы с поддержкой непрозрачности в IE нашелся:
Дописываем в CSS:
--- Код: ---IMG.png { behavior: url("/hack-png.htc"); }
--- Конец кода ---
HTML код:
--- Код: ---
--- Конец кода ---
Содержание hack-png.htc:
--- Код: ---
var needHack = needHack();
var transparentImage = "/trans.gif";
pngHack();
function propertyChanged()
{
if (event.propertyName == "src")
pngHack();
}
function pngHack()
{
if (!needHack) return;
var src = element.src;
if (src.indexOf(transparentImage) != -1) return; // already fixed
element.src = transparentImage;
element.runtimeStyle.filter =
"progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'" + src +
"\',sizingMethod=\'scale\')";
}
function needHack()
{
if (window.opera) return false; // it\'s Opera
var pos = navigator.userAgent.indexOf("MSIE ");
if (pos == -1) return false; // it\'s not MSIE
var version = navigator.userAgent.substring(pos + 5);
return (((version.indexOf("5.5") == 0) || (version.indexOf("6") == 0)) &&
(navigator.platform == ("Win32")));
}
--- Конец кода ---
GIF в переменной transparentImage - пустая gif картинка.
все прекрасно работает и казалось бы проблема решена. но не тут-то было - тут используется тег IMG, а как приспособить все это к аттрибуту background таблицы не могу понять!!! :(
подскажите плииз, как решить эту проблему. может у кого получится переделать под бэграунд этот хак.. буду ооочень благодарен!!!
или может есть какое-то другое решение этой проблемы?
Заранее благодарен.
hanslinger:
в эту таблицу положить див с фоном, z-index 1 и прозрачностью
у контента сделать z-index 2
mad_boy:
пасиба, я тоже склоняюсь уже к такому варианту... только с дивами я слабоват((
если вам не сложно - простенький примерчик ;)
Навигация
Перейти к полной версии