【问题标题】:content negotiation - displaying images in firefox内容协商 - 在 Firefox 中显示图像
【发布时间】:2014-01-05 13:25:57
【问题描述】:

我有一个微缩图片库。单击其中一个后,将在新选项卡中打开等效的全尺寸。假设我有很多版本的图像 .jpg,.gif and .png 。如何修改我的文件以显示正确的(浏览器最想要的)文件?

我的 Firefox 偏好是:

user_pref("network.http.accept.default", "text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/webp, image/jpeg;q=0.8, image/gif, image/x-xbitmap, */*;q=0.1");

还有我的 .php 文件:

<?php 
    $source = $_GET['source'];
    echo '<img src="images/watermarked/'.$source.'" alt="File not found."></img>';

?>

【问题讨论】:

    标签: javascript php css firefox content-negotiation


    【解决方案1】:

    看起来,您的 PHP 文件没有用,因为您也可以在图库代码中执行此逻辑。

    另外,我不明白这一点,你为什么不发送最想要的格式。我宁愿根据内容选择我的格式,而不是浏览器。 JPEG 文件非常适合照片和大多数绘画,PNG 文件非常适合非矢量图形,带有 PNG 后备的 SVG 适合矢量,GIF 适合动画。我会选择这种方式。此外,您不应该发送非常大的文件,因为某些设备有限制。在大多数情况下,低于 3 兆像素的图像似乎还可以。

    无论如何,如果您可以根据请求标头访问这些首选项,则可以用逗号分隔,过滤可用的文件格式,然后选择剩余数组中的第一个值以获得所需的值。如果数组中没有值,则需要使用后备。

    【讨论】:

      猜你喜欢
      • 2014-03-22
      • 2013-07-28
      • 1970-01-01
      • 1970-01-01
      • 2012-08-13
      • 2016-01-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多