CSS中有很多可以用來控制圖片的屬性,而且其中有一種叫做“background-size”屬性可以讓背景圖片按比例放大而不失真,下面我們來看一下這個屬性的應用:
.container { background-image: url('your-image.jpg'); background-repeat: no-repeat; background-size: cover; }
這里我們先設置了一個.container的div,然后用background-image屬性引入了一個jpg圖片,接下來加上了background-repeat屬性禁止圖片重復,最后是最關鍵的background-size屬性,它的值為“cover”,表示把圖片放大到撐滿整個容器,但不會失真。如果需要使圖片按比例放大到限定大小,可以使用“contain”作為屬性值。
background-size屬性并不僅限于背景圖片,它也可以用于img標簽中引入的圖片。相比于使用width和height屬性來控制圖片大小,在保證圖片不失真的前提下,background-size能給圖片更為合適的大小,并且可以自適應調(diào)整大小。
img { max-width: 100%; height: auto; }
如果需要通過img標簽來實現(xiàn)放大不失真的效果,可以借用上面的代碼。max-width屬性可以讓圖片的寬按比例縮放并適應屏幕大小,而height則根據(jù)寬度自動計算高度,從而保證圖片不失真。同時,由于max-width的存在,圖片也可以跟隨屏幕大小自適應調(diào)整大小,這是background-size不能做到的。
總的來說,利用CSS可以實現(xiàn)圖片的放大和縮小而不失真,background-size和max-width是兩個最常用的屬性。需要注意的是,當圖片的實際大小過小時,放大后還是會出現(xiàn)鋸齒等問題。
上一篇css當前顏色