2009-02-11 12 views
3

Когда firefox (3.0.6) отображает png-изображение с определенной шириной (например, 50%), тонкая серая линия отображается вдоль левого и верхнего краев окна содержимого. Линия исчезает с другой шириной (например, 70%). Кроме того, линия, похоже, не присутствует в исходном изображении (используя gimp для проверки изображения).firefoxs делает тонкие серые линии на краях содержимого окна png на определенной ширине - почему?

Это явление происходит в отсутствие разметки стиля CSS - в приведенном ниже примере HTML присутствует CSS, чтобы уточнить, где расположены серые линии - кажется очевидным, что серые линии появляются на самом краю самого окна содержимого.

мне трудно представить, что это добросовестный светлячок ошибка, и я интересно, что концепция я с видом или не хватать ...

Спасибо за ваше время и любые предложения/мысли ...

изображения можно увидеть herehttp://datlisp.blogspot.com/2009/02/img-width-tag-and-firefox-rendering-of.html

HTML:

<html> 
<head><title>problems with pngs</title></head> 
<body> 
<div style="border-color: red; border-width: thin; border-style: solid; 
     padding: 2px"> 
<img src="http://imagebin.ca/img/ato4dM.png" 
    width="50%" 
    style="border-color: blue; border-width: thin; border-style: solid; 
    padding: 2px;"/>  
</div> 
</body></html> 
+0

Я не вижу этого при просмотре исходного изображения. Это звучит как отчет об ошибке/вопрос для форумов поддержки Mozilla, а не вопрос программирования. –

+0

Ничто из вас не работает с изображениями.Я заканчиваю страницу, в которой говорится: «Вы не можете этого сделать здесь». Брандмауэр? – sblundy

+0

Перезагрузите изображение, как только вы попадете на страницу - это ссылка. –

ответ

0

Использование демонстрационной страницы и изображения, я не был в состоянии видеть ничего плохого.

Возможно, это проблема с видеодрайверами? Я считаю, что firefox (и cairo, используемая графическая библиотека) использует аппаратное ускорение для плавного изменения размеров изображений, и, к сожалению, вы не можете отключить его AFAIK.

Попробуйте войти в систему через удаленный протокол, чтобы обойти видеокарту и проверить ее. По крайней мере, вы можете получить спокойствие. :)

+0

Серые линии по-прежнему отображаются, когда они просматриваются через туннель в разрезе. Тем не менее, из комментариев до сих пор, похоже, что это не глупый вопрос с недоразумением HTML или CSS ... так что, вероятно, это не предмет переполнения стека ... – dat

+0

Это проблема с видеодрайвером: https: // bugzilla. mozilla.org/show_bug.cgi?id=490997 – dat

+0

Эй, было приятно, что ты помнишь. :) –

1

Сохранение изображений в формате PNG-24. У меня были аналогичные проблемы с искажением пикселей при попытке динамического изменения изображений PNG-8 в браузере.

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

Дополнительная информация: http://graphicssoft.about.com/od/aboutgraphics/l/blresizehtml.htm

+0

---------------- ----- Я по-прежнему вижу тот же эффект (серая линия отображается с шириной 50%, но отсутствует, когда изображение отображается с более высокой шириной, например 80%), как с тем, что imagemagick вызывает «PNG32», так и с тем, что обращается к imagemagick 'PNG24. – dat

1

У меня была аналогичная проблема с галереей изображений, над которой я работал (извините, не могу связать, поскольку я новичок). Изображения эскизов отображаются фактическим размером без изменения размера html/css.

Иногда они получают линию шириной 1 пиксель справа и внизу между изображением div и фоном тени. Нам потребовалось некоторое время, чтобы понять, почему это происходит иногда, но мы сузили его до настроек масштабирования Firefox.

Если вы увеличиваете масштаб страницы в Firefox (ctrl и mousewheel, или ctrl и +/-), то, как и в вашем случае, они отображаются на определенных уровнях масштабирования. Сброс до 100% масштабирования (ctrl и 0) фиксировал его каждый раз для нас, но не помогает людям, использующим функцию масштабирования.

0

У меня была аналогичная проблема при отображении .png-изображения в div-теге. На боковой стороне изображения была изображена тонкая черная линия. Чтобы исправить это, мне пришлось добавить следующий стиль CSS: box-shadow: none;