使用纯 CSS 实现响应式的图片显示效果
2014-03-10 19:30
961 查看
有许多方法可以实现页面里图像的响应式显示(Responsive)。然而,我碰到的所有方案都使用了 JavaScript。这使我疑惑不用 JavaScript 实现图像响应是否可行。
我提出了下面纯CSS的方案。
什么??HTML文档中能嵌入了CSS?
是的,只要你增加了scoped属性,这就在HTML5里就是非常有效的。在这个CSS里,我从某个断点开始用了@media查询把作为背景的高清图像添加到<span>里。 在下面这段代码里,我只添加了一个断点,然而你当然可以按你喜欢的增加许多。
通过使用背景图像指示符,只有在需要的时候才会从服务器获取这个图像。也就是说,只有在media查询满足的时候才能获取到。<img>将确保<span>有正确的高宽比,这样<span>上的背景图像才能得到正确的现实。
CSS 我们还需要对CSS最一点修改,以便在应当显示高清图像的时候隐藏低清晰度的图像。技巧是增加backgroud-size:100%;这使得在维护高宽比不变的情况下伸展背景。
实现起来简单
还可用于视频(我将在以后的博客文章中发表有关这方面的内容)
<style>标签的scoped属性在主要的浏览器里仍然没有得到支持。正是由于这个原因,我们才需要增加一个id,不过在后端代码中增加这通常不是问题。
原文地址:pure-css-responsive-images-yes-javascript
本文链接:/article/6368950.html
我提出了下面纯CSS的方案。
它是如何工作的呢?
我把<img>标签防止在<span>内。src属性将从服务器获得手机版本的图像。接着我还在<span>元素内部包含了一点CSS。什么??HTML文档中能嵌入了CSS?
是的,只要你增加了scoped属性,这就在HTML5里就是非常有效的。在这个CSS里,我从某个断点开始用了@media查询把作为背景的高清图像添加到<span>里。 在下面这段代码里,我只添加了一个断点,然而你当然可以按你喜欢的增加许多。
通过使用背景图像指示符,只有在需要的时候才会从服务器获取这个图像。也就是说,只有在media查询满足的时候才能获取到。<img>将确保<span>有正确的高宽比,这样<span>上的背景图像才能得到正确的现实。
代码展示
下面是可以运行的所有代码。HTML
首先看HTML。好处
没有JavaScript实现起来简单
还可用于视频(我将在以后的博客文章中发表有关这方面的内容)
缺点
在桌面环境下,需要向服务器发送两个请求<style>标签的scoped属性在主要的浏览器里仍然没有得到支持。正是由于这个原因,我们才需要增加一个id,不过在后端代码中增加这通常不是问题。
演示
看看 这个展示 。原文地址:pure-css-responsive-images-yes-javascript
本文链接:/article/6368950.html
相关文章推荐
- Android 使用开源库StickyGridHeaders来实现带sections和headers的GridView显示本地图片效果
- CSS3 animation实现图片轮播效果 自动显示 无需使用js 含代码(图片轮播效果一)
- 【转载】Android 使用开源库StickyGridHeaders来实现带sections和headers的GridView显示本地图片效果
- Android 使用开源库StickyGridHeaders来实现带sections和headers的GridView显示本地图片效果
- 用css实现链接经过时显示浮动图片背景的效果
- Android 使用开源库StickyGridHeaders来实现带sections和headers的 GridView 显示本地图片效果
- Android 使用开源库StickyGridHeaders来实现带sections和headers的GridView显示本地图片效果
- 使用CSS实现图片分割效果的简单方法介绍
- 使用GridView和ImageView组件实现图片显示效果
- html 使用js+css+html实现图片划过预览效果
- 【转】Android 使用ViewPager实现类似gallery画廊的效果(画廊效果之ViewPager显示多个图片)
- Android 使用开源库StickyGridHeaders来实现带sections和headers的GridView显示本地图片效果
- Android 使用开源库StickyGridHeaders来实现带sections和headers的GridView显示本地图片效果
- Android 使用开源库StickyGridHeaders来实现带sections和headers的GridView显示本地图片效果
- 使用CSS实现中间镂空的图片遮罩效果
- 使用原生javascript和css实现图片轮播效果
- Android 使用开源库StickyGridHeaders来实现带sections和headers的GridView显示本地图片效果
- Android 使用开源库StickyGridHeaders来实现带sections和headers的GridView显示本地图片效果
- Android 使用ViewPager实现类似gallery画廊的效果(画廊效果之ViewPager显示多个图片)
- 使用Banner实现图片的轮番显示的效果,替换ViewPager + CirclePagerIndicator