html - Asp.net:不同屏幕分辨率的可变图像源

标签 html asp.net image optimization bandwidth

有没有办法为不同的屏幕分辨率选择不同的图像源?

类似于媒体查询,但仅适用于图像

<img src="@<variable source for variable screen res.>@" />

节省一些服务器带宽并增加移动设备或小屏幕的加载时间。

我有一个用于高清屏幕的 1800x900 图像,需要为另一个屏幕选择 900x300 版本。

对于 slider 内的那些大背景图像,会导致过多的服务器负载以及时间和金钱。

最佳答案

使用 HTML:

(来源:http://css-tricks.com/on-responsive-images/)

<picture alt="description of image">

  <!-- low-res, default -->
  <source src="small.jpg">

  <!-- med-res -->
  <source src="medium.jpg" media="(min-width: 400px)">

  <!-- high-res -->
  <source src="large.jpg" media="(min-width: 800px)">

  <!-- Fallback content -->
  <img src="small.jpg" alt="description of image">

</picture>

这是 HTML 5 的一个非常新的实验性功能,请参阅 http://caniuse.com/#feat=picture

使用 JavaScript:

有几个插件可以解决这个问题:

使用CSS:

<div id="picture"></div>作为 IMG 的替代品元素:

#picture {
     background-repeat: no-repeat;
     background-size: 100%;
}

@media (min-width: 800px) {
   #picture { background-image: url('small.jpg'); width: (SMALL_WIDTH); height: (SMALL_HEIGHT); }
}

@media (min-width: 1200px) {
   #picture { background-image: url('medium.jpg'); width: (MEDIUM_WIDTH); height: (MEDIUM_HEIGHT); }
}

@media (min-width: 1400px) {
   #picture { background-image: url('large.jpg'); width: (LARGE_WIDTH); height: (LARGE_HEIGHT); }
}

使用服务器端解决方案:

关于html - Asp.net:不同屏幕分辨率的可变图像源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25258286/

相关文章:

html - 如何消除实时 View 中包含 div 内的两个 div 之间的空间?

asp.net - 陷阱 : Upgrading from single servers to web farms

html - 在html中导入图像时出现灰色框

图像分割

javascript - 2 种类型的文本区域值

html每周食谱表按钮

html - Windows Phone 8 突出显示输入字段中的颜色

javascript - Javascript 更改文本后获取 TextBox 文本

html - Microsoft Edge 显示空白,而 chrome/Internet Explorer 不显示

java - 安卓图片加载