Перейти к публикации

png в internet explorer не отобраджается!


Рекомендованные сообщения

Вместо прозрачного фона- грязно- голубая заливка... Перерыла весь инет- нашла пару советов- но они не помогли. все осталось как есть... помогите плз!

Ссылка на сообщение
Поделиться на других сайтах

это я уже пробовала

создавала файл fixpng.js с таким кодом:

// fixPNG(); http://www.tigir.com/js/fixpng.js (author Tigirlas Igor)

function fixPNG(element)

{

if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent))

{

var src;

if (element.tagName=='IMG')

{

if (/\.png$/.test(element.src))

{

src = element.src;

element.src = "/blank.gif";

}

}

else

{

src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i)

if (src)

{

src = src[1];

element.runtimeStyle.backgroundImage="none";

}

}

if (src) element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')";

}

}

затем в menu.tpl между тэгами <head> </head> прописывала

<!--[if lt IE 7]>

<![if gte IE 5.5]>

<script type="text/javascript" src="/fixpng.js"></script>

<style type="text/css">

.iePNG, IMG { filter:expression(fixPNG(this)); }

.iePNG A { position: relative; }/* стиль для нормальной работы ссылок в элементах с PNG-фоном */

</style>

<![endif]>

<![endif]-->

Ничего не выходит.и хз что не так делаю...

Подскажите плз как правильно- я только учусь обращаться с DLe и еще не совсем все понимаю :(

Изменено пользователем Shandi
Ссылка на сообщение
Поделиться на других сайтах

ну рокеры. и что? не люди чтоли? :angry:

Да он не со зла, что Вы. Не надо так реагировать.

Я уверен, что он не хотел никого оскорбить или унизить.

Общайтесь дружно.

Ссылка на сообщение
Поделиться на других сайтах

тада лана :);):P просто обычновсе начинают: тупые,безрукие,потому что рокеры... бесит... сорри за оффтоп... так что по теме? никто не знает как помочь с png? На форуме 4dle сказали что это все в настройках экспы.... я не нашла..

Ссылка на сообщение
Поделиться на других сайтах

это я уже пробовала

создавала файл fixpng.js с таким кодом:

// fixPNG(); http://www.tigir.com/js/fixpng.js (author Tigirlas Igor)

function fixPNG(element)

{

if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent))

{

var src;

if (element.tagName=='IMG')

{

if (/\.png$/.test(element.src))

{

src = element.src;

element.src = "/blank.gif";

}

}

else

{

src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i)

if (src)

{

src = src[1];

element.runtimeStyle.backgroundImage="none";

}

}

if (src) element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')";

}

}

затем в menu.tpl между тэгами <head> </head> прописывала

<!--[if lt IE 7]>

<![if gte IE 5.5]>

<script type="text/javascript" src="/fixpng.js"></script>

<style type="text/css">

.iePNG, IMG { filter:expression(fixPNG(this)); }

.iePNG A { position: relative; }/* стиль для нормальной работы ссылок в элементах с PNG-фоном */

</style>

<![endif]>

<![endif]-->

Ничего не выходит.и хз что не так делаю...

Подскажите плз как правильно- я только учусь обращаться с DLe и еще не совсем все понимаю :(

Упс... а сайта-то и нету уже? Ну да ладно.

Вы еще покажите свой css файл и вам сразу помогут!

Ссылка на сообщение
Поделиться на других сайтах
  • 3 недели спустя...

Вместо прозрачного фона- грязно- голубая заливка... Перерыла весь инет- нашла пару советов- но они не помогли. все осталось как есть... помогите плз!

так, поехали.

делаете файли с таким содержимым

<public:component>

<public:attach event="onpropertychange" onevent="doFix()" />

<script type="text/javascript">

var blankImg = '/assets/fixer/blank.gif';

var f = 'DXImageTransform.Microsoft.AlphaImageLoader';

function filt(s,m)

	{

	if (filters[f])

		{

		  filters[f].enabled = s ? true : false;

		  if (s) with (filters[f])

			{

			src = s;

			sizingMethod = m;

			}

 		}

 	else if (s)

		{

		style.filter = 'progid:'+f+'(src="'+s+'",sizingMethod="'+m+'")';

		}

	}

function doFix()

	{

	// Assume IE7 is OK

	if (!/MSIE (5\.5|6\.)/.test(navigator.userAgent) || (event && !/(background|src)/.test(event.propertyName)))

		{

		return;

		}

	var bgImg = currentStyle.backgroundImage || style.backgroundImage;

	if (tagName == 'IMG')

		{

		if ((/\.png$/i).test(src))

			{

			// this tests to see if the image has already been replaced once before

			if (src.indexOf('?repurl=') == -1)

				{

				if (currentStyle.width == 'auto' && currentStyle.height == 'auto')

					{

					style.width = offsetWidth+'px';

					}

				filt(src,'scale');

				src = blankImg+'?repurl='+src;

				}

			}

		else if (src.indexOf(blankImg) < 0)

			{

			filt();

			}

		}

	else if (bgImg && bgImg != 'none')

		{

		  if (bgImg.match(/^url[("']+(.*\.png)[)"']+$/i))

			  {

   		var s = RegExp.$1;

   		if (currentStyle.width == 'auto' && currentStyle.height == 'auto')

				{

				style.width = offsetWidth+'px';

				}

   		style.backgroundImage = 'none';

   		filt(s,'crop');

   		// IE link fix

   		for (var n=0;n<childNodes.length;n++)

				{

				if (childNodes[n].style) { childNodes[n].style.position = 'relative'};

				}

			  }

		else filt();

		}

	}

doFix();

</script>

</public:component>
в нем есть строчка var blankImg = '/assets/fixer/blank.gif'; сделайте пустую гифку неважно какого размера. сохраните и пропишите свой путь к ней. далее сохраняете это файлик где угодно на серваке. в css сделайте класс для своих пнг или просто добавьте в существующий уже вот такую строчку
behavior: url(/assets/fixer/iepngfix.htc);

в которой просто впишите путь в вашему файлу с кодом выше.

все. все проблемы исчезают.

если чего не получится стучите в аську 222589288

Ссылка на сообщение
Поделиться на других сайтах

а не проще просто переименовать файл в .gif?

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

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...