html5 picture样式,html5提供的picture标签可以更好地解决图片响应式的问题

一、图片响应式设计的老方法。

在以前为图片做响应式设计的时候,一般用三种方法。

第一种,直接让图片和父容器保持100%:img {

width: 100%;

height: auto;

}

或者使用:img {

max-width: 100%;

height: auto;

}

max-width的好处是图片没有父容器大的时候,显示默认大小,如果超过了父容器,则和父容器保持一致。

第二种,利用背景图片的background-size属性。background-size:contain;

background-size:100%;

background-size:cover;

上面两种方法都是用的一张图片进行大小的控制。

第三种,利用media queries媒体查询实现不同的宽度用不同的图片。/* 当窗口宽度小于400px */

body {

background-image: url('1.jpg');

}

/* 当窗口宽度大于等于400px */

@media only screen and (min-width: 400px) {

body {

background-image: url('2.jpg');

}

}

二、html5提供的,最新的方法。

当然,html5提供的标签的思想依然是利用媒体查询的方法实现根据不同的设备宽度加载不同的图片,但是语法结构就更简单了。

和video和audio标签很像,提供了source源。

  

srcset属性是必须的,提供图片的来源。

media属性支持所有media queries媒体查询的写法。可以缺省。

最后定义一个标签,用于不支持picture标签的浏览器。

比如,墨刀这个网站就用了该技术。

    

具体效果可以点击查看。

遗憾的是,这么好的标签,IE还是拉了后腿。

45de9066a2abd1e96ccb69da00033f21.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值