PNG & IE @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
 Страница 1 из 1 [ Сообщений: 19 ] 
*   Список форумов / Начинка и техника / Программирование для WWW » ответить » создать топик « | »
Автор Сообщение
Born2be Муж.
постоянный участник
93
Сообщения: 2601
Зарегистрирован: 20.07.06
Откуда: Латвия [Рига]
Заголовок сообщения: PNG & IE
Сообщение Добавлено: 28 Май 2008, 11:30:23 
Народ, за*бался я уже поисками. Есть страница www.globalprofitclub.ru там дофига всяких ПНГ файлов (тени, переходы фона и т.д.). Т.е. не просто логотип с прозрачностью, а много вещей, где ПНГ используется как background. я уже кучу скриптов перепробовал, но ничего не подходит, один глюк сменяется другим от скриптка к скрипту. Есть ли какой-то способ 100% работающий? В FF и Сафари всё нормально отображается

_________________
[*][ЩАСТЬЕ]
I am Macintosh user
DE'журнал. Быть или не быть?
всё обо мне
tentoys Муж.
постоянный участник
121
Сообщения: 2940
Зарегистрирован: 06.08.02
Откуда: МКАДонутряк
Заголовок сообщения: Re: PNG & IE
Сообщение Добавлено: 28 Май 2008, 11:41:23 
Born2be, пнг в бэкграунде -- не поможет?

_________________
Keep in touch. Andrey Alexeev.
vashurin
новый человек
9
Сообщения: 129
Зарегистрирован: 21.06.06
Откуда: Самара
Сообщение Добавлено: 28 Май 2008, 11:45:51 
Не в тему: а там вообще то нужно PNG в фоне? По-моему можно и без этого обойтись...
В тему: http://www.artlebedev.ru/tools/technogr … ml/framed/ , хотя, в статье сказано, что фоновое, прозрачное PNG не работает режимах strict и transitional для IE версии 6. Но вообще, колдовство с:
Код:
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=framed.png,sizingMethod=crop);

(где framed.png - это имя картинки) может и поможет.

_________________
С уважение, Вашурин Владимир.
Born2be Муж.
постоянный участник
93
Сообщения: 2601
Зарегистрирован: 20.07.06
Откуда: Латвия [Рига]
Сообщение Добавлено: 28 Май 2008, 11:48:56 
Спасибо, попробую разобраться.
По поводу фона: там идёт горизонтальная полоса синяя, которая рассасывается кверху и книзу. Просто необходимо чтобы фон везде был паттерном с этими шарами, а именно там шла эта полоса. Я просто не верстальщик и не придумал другого способа как там это сделать.

просто везде пишут про скрипт pngbehavior, но он какой-то глючный.

_________________
[*][ЩАСТЬЕ]
I am Macintosh user
DE'журнал. Быть или не быть?
всё обо мне
Born2be Муж.
постоянный участник
93
Сообщения: 2601
Зарегистрирован: 20.07.06
Откуда: Латвия [Рига]
Сообщение Добавлено: 28 Май 2008, 12:02:33 
К полоскам на фоне приписываю такую вот фигню:

Код:
<table width="100%" height="198" border="0" cellspacing="0" cellpadding="0" align="center" style="background-position: center; background-image: url('img/blue_1.png'); filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=img/blue_1.png, sizingMethod=scale)" >


И при загрузке получается забавная фигня: сперва полоски загружаются с прозрачностью, а после полной загрузки страницы опять становятся с серой фигнёй на фоне. Можете по той ссылке глянуть. Почему так?

_________________
[*][ЩАСТЬЕ]
I am Macintosh user
DE'журнал. Быть или не быть?
всё обо мне
Born2be Муж.
постоянный участник
93
Сообщения: 2601
Зарегистрирован: 20.07.06
Откуда: Латвия [Рига]
Сообщение Добавлено: 28 Май 2008, 12:21:49 
всё, оказалось, что если в конце приписать background: none; то случается чудо и в IE всё начинает работать как надо. Но... зато PNG пропали в FireFox. Гррр... чё делать? для каждой картинки определять чё за браузер и решать применять фильтр или нет? Ну если даже так, то как это делать? а то уже и так слишком много додов, для отображения каждой картинки уже три строки кода... :confused:

_________________
[*][ЩАСТЬЕ]
I am Macintosh user
DE'журнал. Быть или не быть?
всё обо мне
KaretT Муж.
новый человек
2
Сообщения: 98
Зарегистрирован: 10.09.05
Откуда: Москва
Сообщение Добавлено: 28 Май 2008, 12:37:17 
я делаю так:
Код:
background: url(images/test.png) no-repeat;
// background:none; 
// filter:progid:DXImageTransform.Microsoft.AlphaImageLoader( src='images/test.png');
Born2be Муж.
постоянный участник
93
Сообщения: 2601
Зарегистрирован: 20.07.06
Откуда: Латвия [Рига]
Сообщение Добавлено: 28 Май 2008, 13:11:42 
KaretT, неа, не работает. просто появляется полоска ПНГ в один пиксель по ширине (надо 100%) и всё. Вобщем мы решили написать два отдельных шаблона, один под ИЕ, второй под нормальные браузеры, определять средствами РНР какой именно подгружать и всё. :laugh:

_________________
[*][ЩАСТЬЕ]
I am Macintosh user
DE'журнал. Быть или не быть?
всё обо мне
ulitin kirill
постоянный участник
92
Сообщения: 2844
Зарегистрирован: 17.07.05
Откуда: Санкт-Петербург
Сообщение Добавлено: 28 Май 2008, 15:06:36 
Born2be, не будет дублирование под фильтром работать.

_________________
хочу лето, очень.
karamba Муж.
старожил
209
Сообщения: 6498
Зарегистрирован: 17.08.05
Откуда: Киев. А шо?
Сообщение Добавлено: 28 Май 2008, 16:45:41 
фильтр впихивает картинку в контейнер (на который этот фильтр повешен) или кропает ее по контейнеру. К фону и его свойтсвам этот подход не имеет никакого отношения.
Используя фильтр, можно только эмулировать наложение контента на контейнер с фильтром, напр. через абс.позиционирование и раздачу з-индексов.

_________________
клетчатый!
Born2be Муж.
постоянный участник
93
Сообщения: 2601
Зарегистрирован: 20.07.06
Откуда: Латвия [Рига]
Сообщение Добавлено: 28 Май 2008, 21:14:25 
karamba, самое интересное, что фильтр с фоном работает. можешь зайти сейчас по ссылке выше, там этим фильтром всё пока под ИЕ заточено. для ФФ другой шаблон будет.

_________________
[*][ЩАСТЬЕ]
I am Macintosh user
DE'журнал. Быть или не быть?
всё обо мне
karamba Муж.
старожил
209
Сообщения: 6498
Зарегистрирован: 17.08.05
Откуда: Киев. А шо?
Сообщение Добавлено: 28 Май 2008, 22:16:23 
Born2be, прочитайте вдумчиво мои откровения. Скейл для фильтра и рипит для фона — вовсе не одно и то же, потому что это совсем разные вещи. Я говорил об «эмуляции», «как-бы фоне». У вас так и есть. Поэтому конструкция
Код:
<td style="background-image:url(img/orange_d_1.png); filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=img/orange_d_1.png, sizingMethod=scale); background: none">

по-большому счету лишена смысла — ФФ фон не показывает, как вы и сказали в последней директиве стиля, и ИЕ не показывает, он показывает фильтр. С таким же успехом можно было оставить просто
Код:
<td style="filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=img/orange_d_1.png, sizingMethod=scale);">

Но чудо! Достаточно поставить мааааленькие символы в последних директивах, и все заработает везде (даже в ИЕ 7, ведь вы в нем не проверяли, правда?):
Код:
<td style="background:url(img/orange_d_1.png) left top no-repeat; _filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=img/orange_d_1.png, sizingMethod=scale); _background: none">
и не нужно будет писать другой шаблон. А некоторые умельцы выносят описания стилей вообще в отдельные цсс-файлы, причем разные для ИЕ и не-ИЕ и подключают их к хтмл через CC например, используя классы и базовый принцип цсс — наследование, имея на выходе один общий шаблон…
Велкам ту зе ворлд оф хакс

PS. Да, и это конечно не мое дело, но от этого, например
Код:
<td width="842" bgcolor="#FF9900" style="background-image:url(img/orange_line.jpg); height:12px">
передернуло. 2008 год на дворе, ё-маё…

_________________
клетчатый!
Born2be Муж.
постоянный участник
93
Сообщения: 2601
Зарегистрирован: 20.07.06
Откуда: Латвия [Рига]
Сообщение Добавлено: 29 Май 2008, 09:07:09 
karamba, спасибо, попробую на работе )) :beer:

_________________
[*][ЩАСТЬЕ]
I am Macintosh user
DE'журнал. Быть или не быть?
всё обо мне
Born2be Муж.
постоянный участник
93
Сообщения: 2601
Зарегистрирован: 20.07.06
Откуда: Латвия [Рига]
Сообщение Добавлено: 29 Май 2008, 10:57:07 
гыыы… karamba, ты волшебник )) а можешь объяснить что эти чёрточки делают? почему так?

_________________
[*][ЩАСТЬЕ]
I am Macintosh user
DE'журнал. Быть или не быть?
всё обо мне
karamba Муж.
старожил
209
Сообщения: 6498
Зарегистрирован: 17.08.05
Откуда: Киев. А шо?
Сообщение Добавлено: 29 Май 2008, 12:13:33 
Born2be, это «хак».
Ищи, в сети много интересного ))

_________________
клетчатый!
Born2be Муж.
постоянный участник
93
Сообщения: 2601
Зарегистрирован: 20.07.06
Откуда: Латвия [Рига]
Сообщение Добавлено: 29 Май 2008, 12:48:07 
Карамба, в июле-августе доедем до питера (надеюсь и до Москвы), в долгу не останусь :laugh: :beer:

_________________
[*][ЩАСТЬЕ]
I am Macintosh user
DE'журнал. Быть или не быть?
всё обо мне
karamba Муж.
старожил
209
Сообщения: 6498
Зарегистрирован: 17.08.05
Откуда: Киев. А шо?
Сообщение Добавлено: 29 Май 2008, 14:27:07 
Born2be, супер! Только от Киева это далековато ))
:beer:

_________________
клетчатый!
Born2be Муж.
постоянный участник
93
Сообщения: 2601
Зарегистрирован: 20.07.06
Откуда: Латвия [Рига]
Сообщение Добавлено: 29 Май 2008, 14:40:03 
karamba, ах, я думал вся ваша тусовка из москвы :laugh:

_________________
[*][ЩАСТЬЕ]
I am Macintosh user
DE'журнал. Быть или не быть?
всё обо мне
karamba Муж.
старожил
209
Сообщения: 6498
Зарегистрирован: 17.08.05
Откуда: Киев. А шо?
Сообщение Добавлено: 29 Май 2008, 14:48:55 
Ответ на вопрос.

Самое простое:
Код:
<img src="empty.png" style="width:…px; height:…px;border:0; background:url(logo.png) left top no-repeat; _background: none; _filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=logo.png, sizingMethod=crop);" />

где empty.png — пустой прозрачный однопиксельный PNG-8 (аналог гифа или просто прозрачный гиф), который растянется указанием ширины и высоты до размеров имиджа logo.png. Сам logo.png — логотип в PNG-24.
Минусы — меньше кода, но при попытке напечатать при свойствах печати по-умолчанию или отключенном парсинге цсс лого никто не увидит.

Чуть сложнее:
Код:
<img src="empty.png" style="display:none; _display:block; width:…px; height:…px;border:0; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=logo.png, sizingMethod=crop);" /><img src="logo.png" style="_display:none; width:…px; height:…px;border:0;" />

используется два имиджа. Первый, как и в первом случае — контейнер для фильтра, понимаемый только ИЕ версии ниже 7-й, работает директива "display:none; _display:block;". Свойству _display можно присвоить занчения "inline" или "inline-block" в зависимости от макета/окружения/мастерства.
Второй имидж видят все, кроме ИЕ ниже 7-й версии как честный пнг-24, поэтому никаких доп.свойств, кроме размеров, указывать не нужно, работает директива "_display:none;", понимаемая только ИЕ версии ниже 7. Пнг-24 нормально отображается всеми броузерами, включая ИЕ 7.
Кода больше, но он лишен указанных выше недостатков. Для печати есть нюансы, связанные со свойством media цсс-файла, поэтому есть смысл стилевые определения выносить во внешние файлы. Кроме этого, во внешнем файле можно обойтись вовсе без хаков, подключая его через кондишнл-комментс (если речь идет только о разделении свойств для ИЕ и неИЕ).

_________________
клетчатый!
*   Список форумов / Начинка и техника / Программирование для WWW « | » » ответить » создать топик
 Страница 1 из 1 [ Сообщений: 19 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


ООО ДеФорум
При использовании материалов сайта ссылка на DeForum.ru — обязательна.
Проект Павла Батурина ©2001-2077; // Powered by phpBB © 2013 phpBB Group
Rambler's Top100