0 Пользователей и 1 Гость просматривают эту тему.
  • 25 Ответов
  • 31638 Просмотров
*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
Натолкнулся еще на один способ заставить IE6 обрабатывать альфа-канал, т.е использовать прозрачность.

Самое чудное в данном решении, что скрипт обрабатывает и background

Для этого качаем файл из приложения, распаковываем в папку js (допустим, если другая не забудьте изменить путь), изменяем YOUREMPLATENAME на имя своего шаблона и вписываем код, что ниже в <head>
...
</head>

Код
<!--[if lte IE 6]>
<script type="text/javascript" src="<?php echo $mosConfig_live_site; ?>/templates/YOUREMPLATENAME/js/jquery-latest.pack.js"></script>
<script type="text/javascript" src="<?php echo $mosConfig_live_site; ?>/templates/YOUREMPLATENAME/js/jquery.pngFix.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $(document).pngFix();
    });
</script>
<![endif]-->

Все. Должно работать  ;)

[вложение удалено Администратором]
« Последнее редактирование: 12.07.2008, 12:39:29 от poizon »
*

PaLyCH

  • Давно я тут
  • 956
  • 146 / 19
  • Менеджер проектов
Мдя. Убивает png на смерть. Скрины ниже
1. Как должно быть (ИЕ7)
2. Как есть (ИЕ6)

[вложение удалено Администратором]
*

Professor

  • Захожу иногда
  • 59
  • 10 / 0
Тоже самое.
*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
так... как подключены эти 2 файла?

и как построена верстка? т.е какой слой с пнг находится в каком порядке ?
« Последнее редактирование: 18.07.2008, 22:55:12 от poizon »
*

PaLyCH

  • Давно я тут
  • 956
  • 146 / 19
  • Менеджер проектов
Подключена, как ты написал. Нашел даже туториал на сайте-источнике. Верстка множествено-вложенные div.
*

koval2001

  • Осваиваюсь на форуме
  • 13
  • 1 / 0
Из личного опыта - проще сделать gif с прозрачным фоном, чем мучаться пытаясь подружить png файлы с IE6. Сэкономите время на более важные задачи со строительством сайта.
*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
гиф никогда не сделает альтернативы пнг, да и сделать гиф с прозрачным фоном часто сложнее, чем подружить пнг и 6м ослом, потому что вырезать попиксельно границы - это просто трата времени та еще
*

..С...е...р...ы...й..

  • Захожу иногда
  • 51
  • 110 / 2
не удивительно, но во всех коммерческих шаблонах стоят подобные хаки и очень хорошо работают.
можно смотреть как там сделано, на готовых примерах.
а GIF сравнивать с PNG24, неуместно, тк альфаканал проводить больше никаким другим форматом нельзя, вдобавок качество у PNG-24 неотличимо от BMP-шного
Реальная альтернатива GIF'у  - PNG-8 - там и качество идентичное и размер приблизительно одинаковый, чаще у PNG-8 размер меньше чем у GIF.
По этому я его использую вместо GIF'а
*

Lord Glue

  • Захожу иногда
  • 95
  • 66 / 0
  • добрый пандо
Всем известный IE PNG Fix, который был всем хорош, но который не умел работать с background position и background repeat, наконец - таки исправил этот изъян.

Теперь станет полегче - да что там объяснять, вы наверняка сами понимаете то, что поддержка background position и background repeat это хорошее подспорье.

Стоит учесть, что это Alpha 2, и использовать на "мясе" фикс я бы не рекомендовал, лично я просто буду следить за развитием фикса, потому как не далеко до релиза.

Поддержка, как известно - IE5.5+ PNG. Лицензия не изменилась - GNU LGPL.

Официальная страничка фикса: twinhelix.com

[вложение удалено Администратором]
*

MuraDweb

  • Захожу иногда
  • 267
  • 124 / 1
Ну, как говорится, будем посмотреть ...
Яндекс.Деньги: 41001423568435
Webmoney: R 377548789269 | Z 421465848009 | E 126339514076 | U 413960261029
-
А, Вы читали ? Правила форума | FAQ J! 1.5 | FAQ J! 1.0
*

PaLyCH

  • Давно я тут
  • 956
  • 146 / 19
  • Менеджер проектов
Всем известный IE PNG Fix, который был всем хорош, но который не умел работать с background position и background repeat, наконец - таки исправил этот изъян.

Теперь станет полегче - да что там объяснять, вы наверняка сами понимаете то, что поддержка background position и background repeat это хорошее подспорье.

Стоит учесть, что это Alpha 2, и использовать на "мясе" фикс я бы не рекомендовал, лично я просто буду следить за развитием фикса, потому как не далеко до релиза.

Поддержка, как известно - IE5.5+ PNG. Лицензия не изменилась - GNU LGPL.

Официальная страничка фикса: twinhelix.com

Прозрачность работает,это факт. Но позиция и повторение фона фигово. А так это лучшее решение пока

есть готовое решение с повторение фона, желательно без скрипта?
*

ryar

  • Захожу иногда
  • 86
  • 18 / 0
  • Всем счастья!
Вот здесь описано замечательное решение которым давно пользуюсь _http://www.tigir.com/alpha_png.htm работает также и для фоновых изображений.
*

AZ

  • Осваиваюсь на форуме
  • 30
  • 3 / 4
  • Здесь вам не ТУТ...
Это использую (не помню где скопипастил), работает на ура, поскольку, даже купив коммерческий шаблон столкнулся с тем, что IE6 не желает нормально отображать бекграунды, а сие "лекарство помогло"...  ;D
Вставлять знамо в хейдер....

Код: javascript
 <!--[if gte IE 5.5000]>
 <script language="JavaScript">
 function correctPNG() // correctly handle PNG transparency in Win IE 5.5 or higher.
    {
    for(var i=0; i<document.images.length; i++)
       {
           var img = document.images[i]
           var imgName = img.src.toUpperCase()
           if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
              {
                  var imgID = (img.id) ? "id='" + img.id + "' " : ""
                  var imgClass = (img.className) ? "class='" + img.className + "' " : ""
                  var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
                  var imgStyle = "display:inline-block;" + img.style.cssText
                  if (img.align == "left") imgStyle = "float:left;" + imgStyle
                  if (img.align == "right") imgStyle = "float:right;" + imgStyle
                  if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle             
                  var strNewHTML = "<span " + imgID + imgClass + imgTitle
                  + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
              + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
                  + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
                  img.outerHTML = strNewHTML
                  i = i-1
              }
       }
    }
 window.attachEvent("onload", correctPNG);
 </script>
 <![endif]-->


*

zz84

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
  • ...
Это использую (не помню где скопипастил), работает на ура, поскольку, даже купив коммерческий шаблон столкнулся с тем, что IE6 не желает нормально отображать бекграунды, а сие "лекарство помогло"...  ;D
Вставлять знамо в хейдер....

Код: javascript
 <!--[if gte IE 5.5000]>
 <script language="JavaScript">
 function correctPNG() // correctly handle PNG transparency in Win IE 5.5 or higher.
    {
    for(var i=0; i<document.images.length; i++)
       {
           var img = document.images[i]
           var imgName = img.src.toUpperCase()
           if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
              {
                  var imgID = (img.id) ? "id='" + img.id + "' " : ""
                  var imgClass = (img.className) ? "class='" + img.className + "' " : ""
                  var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
                  var imgStyle = "display:inline-block;" + img.style.cssText
                  if (img.align == "left") imgStyle = "float:left;" + imgStyle
                  if (img.align == "right") imgStyle = "float:right;" + imgStyle
                  if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle             
                  var strNewHTML = "<span " + imgID + imgClass + imgTitle
                  + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
              + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
                  + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
                  img.outerHTML = strNewHTML
                  i = i-1
              }
       }
    }
 window.attachEvent("onload", correctPNG);
 </script>
 <![endif]-->

Не работает...:(
*

AZ

  • Осваиваюсь на форуме
  • 30
  • 3 / 4
  • Здесь вам не ТУТ...
Не работает...:(
На шаблоне чьего производства не работает, куда вставлялся код?
*

zz84

  • Осваиваюсь на форуме
  • 47
  • 0 / 0
  • ...
Вставлял между <head> и </head>Шаблон моего производства, но пробовал и на других.. Joomla LE 2008... У меня вообще проблема - не один из подобных фиксов не работает...
*

intcorp

  • Захожу иногда
  • 456
  • 12 / 0
На шаблоне чьего производства не работает, куда вставлялся код?
Аналогично - не рыботает, шаблон джустины jooway
*

AZ

  • Осваиваюсь на форуме
  • 30
  • 3 / 4
  • Здесь вам не ТУТ...
Господа-Товарищи, мне трудно что-либо сказать по вашим шаблонам, поскольку сам юзаю лицензионные от Rockettheme и TemplatePlazza.
Вот в TemplatePlazza.., да собственно и в других своих самопальных применял сей фикс успешно...
*

Oriy

  • Осваиваюсь на форуме
  • 35
  • 2 / 0
  • «ЗРЮ НА СYЕТY СYЕТЪ»
Это использую (не помню где скопипастил), работает на ура, поскольку, даже купив коммерческий шаблон столкнулся с тем, что IE6 не желает нормально отображать бекграунды, а сие "лекарство помогло"...  ;D
Вставлять знамо в хейдер....

Код: javascript
 <!--[if gte IE 5.5000]>
 <script language="JavaScript">
 function correctPNG() // correctly handle PNG transparency in Win IE 5.5 or higher.
    {
    for(var i=0; i<document.images.length; i++)
       {
           var img = document.images[i]
           var imgName = img.src.toUpperCase()
           if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
              {
                  var imgID = (img.id) ? "id='" + img.id + "' " : ""
                  var imgClass = (img.className) ? "class='" + img.className + "' " : ""
                  var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
                  var imgStyle = "display:inline-block;" + img.style.cssText
                  if (img.align == "left") imgStyle = "float:left;" + imgStyle
                  if (img.align == "right") imgStyle = "float:right;" + imgStyle
                  if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle             
                  var strNewHTML = "<span " + imgID + imgClass + imgTitle
                  + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
              + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
                  + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
                  img.outerHTML = strNewHTML
                  i = i-1
              }
       }
    }
 window.attachEvent("onload", correctPNG);
 </script>
 <![endif]-->




Работать то работает, на своем шаблоне...Но он не решает проблем с Background png!!!(((...Ставил Мамботы CorrectPNG, Ultimate PNG Fix Plugin они также не решают проблему с BG...Понравилось решение из кокогото шаблона, когда заходишь на сайт через ie6 он пишет обнови браузер!!))))...И далее идет перечесление всех косяков ie6..!!!)))))...Очень хорошое решение если делаешь сайт для себя!!!))))

А для BG решения тоже не нашел!!!!...(((..Кто нашел отпишитесь плиз!!!!!
Joomla 1.0
*

AZ

  • Осваиваюсь на форуме
  • 30
  • 3 / 4
  • Здесь вам не ТУТ...
Работать то работает, на своем шаблоне...Но он не решает проблем с Background png!!!(((...Ставил Мамботы CorrectPNG, Ultimate PNG Fix Plugin они также не решают проблему с BG...Понравилось решение из кокогото шаблона, когда заходишь на сайт через ie6 он пишет обнови браузер!!))))...И далее идет перечесление всех косяков ie6..!!!)))))...Очень хорошое решение если делаешь сайт для себя!!!))))

А для BG решения тоже не нашел!!!!...(((..Кто нашел отпишитесь плиз!!!!!
Joomla 1.0

В шаблонах от RocketTheme такое присутствует...  :) 
*

Olga_E

  • Осваиваюсь на форуме
  • 22
  • 0 / 0
Спасибо, Poizon! Очень помогло!!!
*

Longmen

  • Захожу иногда
  • 65
  • 1 / 0
poizon, спасибо.  Сегодня решил добить эту прозрачность. Это единственный вариант, который у меня заработал pngbehavior.htc и iepngfix.htc нивкакую не хотели.
*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
Вы лучше посмотрите на DD_belatedPNG в этой теме
*

back

  • Захожу иногда
  • 214
  • 7 / 0
  • Все просто если по очереди)
Спасибо!
*

Mixxxa

  • Захожу иногда
  • 86
  • 0 / 0
Все работает, но почему то ссыки не реагируют
« Последнее редактирование: 09.07.2013, 23:59:38 от Mixxxa »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Прозрачный фон PNG-файлов в Microsoft IE

Автор userxp

Ответов: 0
Просмотров: 23947
Последний ответ 12.06.2006, 20:23:22
от userxp