javascript - CSS3/HTML5 响应图像

标签 javascript html css

我想根据网页大小使用不同大小的图像。 例如,我的图像有两种不同的尺寸:

<img src="images/img1.jpg" data-big="images/img1.jpg" data-small="images/img1small.jpg" alt=""></img>

data-small 图像的宽度为 100px。

@media (max-width:600px) {
    img[data-small] {
        content: attr(data-small, url); <-- not working
       /*width:10px;*/ <-- this would work
    }
}

我在 Firefox 37.0.1、Chrome 42.0.2311.90 m 和 IE 11 上测试

如果我将浏览器的大小调整到非常小的宽度 (< 600px),图像仍然是一样的。

最佳答案

content 属性用于 :before 和 :after 选择器。如何使用媒体查询。

<img src="images/img1.jpg" class="big_image" alt="">
<img src="images/img1small.jpg" class="small_image" alt="">

CSS 将是

@media (max-width:600px) {
    .small_image{ display:block }
    .big_image{ display:none }
}

@media (min-width:601px) {
    .small_image{ display:none }
    .big_image{ display:block }
}

关于javascript - CSS3/HTML5 响应图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29790996/

相关文章:

javascript - 在 AngularJS 中禁用不需要的验证(条件验证)

php - 如何使名称变量可点击(mysqli)?

html - webkit 框圆 Angular 有困难

html - 如何使用从亮度到黑暗的颜色自动生成类?

css - flex box 保持 child 周围空白的正确方法是什么

javascript - 更改图像的特定区域并在该区域填充颜色

javascript - 由于数字周围的引号,node.js mysql 查询无法运行

html - 为什么 <div> 下的 <li> 元素与 <ul> 下的 <li> 元素渲染不同?

css - Bootstrap 表在新行上 strip 化

javascript - gulp-concat 和 lazypipe 的这种组合在使用 gulp 4 时会导致错误吗?