真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

HTML5中picture元素響應(yīng)式處理圖片的方法

這篇文章主要介紹“HTML5中picture元素響應(yīng)式處理圖片的方法”,在日常操作中,相信很多人在HTML5中picture元素響應(yīng)式處理圖片的方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對(duì)大家解答”HTML5中picture元素響應(yīng)式處理圖片的方法”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

目前創(chuàng)新互聯(lián)公司已為千余家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、網(wǎng)站運(yùn)營、企業(yè)網(wǎng)站設(shè)計(jì)、靖州網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

響應(yīng)式設(shè)計(jì)

所謂的響應(yīng)式設(shè)計(jì),是指在不同的屏幕分辨率,不同的像素密度比,不同寬度的終端設(shè)備中,網(wǎng)頁布局可以自適應(yīng)的調(diào)整。響應(yīng)式設(shè)計(jì)的本意是使原本PC上的網(wǎng)站兼容移動(dòng)終端,大部分響應(yīng)式網(wǎng)頁是通過媒體查詢,加載不同樣式的CSS文件實(shí)現(xiàn)的。這樣的彈性化布局使網(wǎng)站在不同的設(shè)備終端布局都比較合理。

雖然響應(yīng)式設(shè)計(jì)的好處多多,但是也有諸多缺陷。由于PC端和移動(dòng)終端訪問的是同一個(gè)網(wǎng)站,PC端可以不計(jì)較流量限制,但是移動(dòng)端不可能不計(jì)較。

HTML5中picture元素響應(yīng)式處理圖片的方法

為適配不同終端機(jī)型的屏幕寬度和像素密度,我們一般會(huì)使用如下方法設(shè)置圖片的CSS樣式:

將圖片的最大寬度設(shè)置為100%,以確保圖像不會(huì)超出其父級(jí)元素的寬度,如果父級(jí)元素的寬度發(fā)生改變,圖片的寬度也隨之改變,height:auto 可以確保圖片的寬度發(fā)生改變時(shí),圖片的高度會(huì)依據(jù)自身的寬高比例進(jìn)行縮放。

這樣當(dāng)我們?cè)谝苿?dòng)設(shè)備上訪問響應(yīng)式網(wǎng)頁里的圖片時(shí),只是把圖片的分辨率做了縮放,下載的還是PC端的那張大圖,這樣不僅浪費(fèi)流量,而且浪費(fèi)帶寬,而且會(huì)拖慢網(wǎng)頁的打開速度,嚴(yán)重影響用戶的使用體驗(yàn)。

新的解決方案:

  1. 是HTML5的一個(gè)新元素;

  2. 如果元素與當(dāng)前的

  3. 可以根據(jù)不同的條件加載不同的圖像,這些條件可以是視窗當(dāng)前的高度(viewport),寬度(width),方向(orientation),像素密度(dpr)等;

舉幾個(gè)栗子

如下栗子中針對(duì)不同屏幕寬度加載不同的圖片;當(dāng)頁面寬度 在320px到640px之間時(shí)加載minpic.png;當(dāng)頁面寬度大于640px時(shí)加載middle.png


    
    
    

2.如下栗子中添加了屏幕的方向作為條件;當(dāng)屏幕方向?yàn)闄M屏方向時(shí)加載_landscape.png結(jié)尾的圖片;當(dāng)屏幕方向?yàn)樨Q屏方向時(shí)加載 _portrait.png結(jié)尾的圖片;


    
    
    
    
    

3.如下栗子中添加了屏幕像素密度作為條件;當(dāng)像素密度為2x時(shí)加載_retina.png 2x 的圖片,當(dāng)像素密度為1x時(shí)加載無retina后綴的圖片;


    
    
    

4.如下栗子中添加圖片文件格式作為條件,當(dāng)支持webp格式圖片時(shí)加載webp格式圖片,當(dāng)不支持時(shí)加載png格式圖片;


    
    

5.如下例子中添加寬度描述;頁面會(huì)根據(jù)當(dāng)前尺寸選擇加載不大于當(dāng)前寬度的最大的圖片;

6.如下例子中添加sizes屬性;當(dāng)窗口寬度大于等于800px時(shí)加載對(duì)應(yīng)版本的圖片;


兼容性:

目前只有Chrome , Firefox , Opera 對(duì)其兼容性較好,具體兼容性如圖:

HTML5中picture元素響應(yīng)式處理圖片的方法

優(yōu)點(diǎn):

  1. 加載適當(dāng)大小的圖像文件,使可用帶寬得到充分利用;

  2. 加載不同剪裁并具有不同橫縱比的圖像,以適應(yīng)不同寬度的布局變化;

  3. 加載更高的像素密度,顯示更高分辨率的圖像;

步驟:

  1. 創(chuàng)建標(biāo)簽;

  2. 在這些標(biāo)簽內(nèi)創(chuàng)建一個(gè)你想用來執(zhí)行任何一個(gè)特性的標(biāo)簽;

  3. 添加一個(gè)media屬性,用來包含你想要的特性,如寬度(max-width,min-width),方向(orientation)等;

  4. 添加一個(gè)srcset屬性,屬性值為相應(yīng)的圖像文件名稱,進(jìn)行加載。如果你想提供不同的像素密度,例如Retina顯示屏,可以添加額外的文件名到srcset屬性中;

  5. 添加一個(gè)回退的標(biāo)簽;

的工作原理

語法

由上面的示例代碼可知,在沒有引入js和第三方庫,CSS中沒有包含media queries的情況下,元素可以實(shí)現(xiàn)只用HTML來聲明響應(yīng)式圖片;

元素

標(biāo)簽它本身沒有屬性。神奇的地方是被用來當(dāng)做的容器。
元素,是用來加載多媒體的比如視頻和音頻,已經(jīng)被更新用到圖片的加載并且一些新的屬性已經(jīng)被添加:

srcset (必需)

接受單一的圖片文件路徑(如:srcset=”img/minpic.png”).

或者是逗號(hào)分隔的用像素密度描述的圖片路徑(如:srcset=”img/minpic.png,img/minpic_retina.png 2x”),1x 的描述是默認(rèn)不使用的。

media (可選)

接受任何驗(yàn)證的media query,你可以看到在CSS @media選擇器(如:media=”(min-width: 320px)”).

在之前的語法的例子里已經(jīng)用到了。

sizes(可選)

接收單一的寬度描述(如:sizes=”100vw”)或者單一的media query寬度描述(如:sizes=”(min-width: 320px) 100vw”).

或者逗號(hào)分隔的media query對(duì)寬度的描述(如:sizes=”(min-width: 320px) 100vw, (min-width: 640px) 50vw, calc(33vw - 100px)”) 最后的一個(gè)被當(dāng)做默認(rèn)的。

type(可選)

接受支持的MIME類型(如: type=”image/webp” or type=”image/vnd.ms-photo”)

瀏覽器會(huì)根據(jù)這些提示和屬性來加載確切的圖片資源。根據(jù)標(biāo)簽的列表順序。瀏覽器會(huì)使用第一個(gè)合適的元素并忽略掉后面的標(biāo)簽。

添加最后的元素

元素在內(nèi)部用來當(dāng)瀏覽器不支持時(shí)或者沒有源標(biāo)簽匹配時(shí)的顯示。在內(nèi)使用標(biāo)簽是必須得,如果你忘記了,將不會(huì)有圖片顯示出來。

來聲明默認(rèn)的圖片顯示。將標(biāo)簽放到內(nèi)的最后,瀏覽器在找到標(biāo)簽之前會(huì)忽略的聲明。這個(gè)圖片標(biāo)簽也需要你寫上它的alt屬性。

到此,關(guān)于“HTML5中picture元素響應(yīng)式處理圖片的方法”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!


網(wǎng)頁名稱:HTML5中picture元素響應(yīng)式處理圖片的方法
分享網(wǎng)址:http://weahome.cn/article/jjjhes.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部