css3 - 背景圖自定義比例縮小
問題描述
本來新手一枚,在開發中遇到背景圖不能安自定義比例縮放,用了background-size:cover,圖片要么右半部分不完整,要么下半部分不完整,要怎么做才能鋪滿全屏并且全部顯示出來
問題解答
回答1:body { background-size:cover; text-align:center; /*此部分支持chrome,應該也支持firefox*/ background:rgb(246,248,249); background:url(../img/bg.jpg) no-repeat center fixed transparent; background-attachment:fixed; background-size:100% 100%; /*以下是IE部分,使用濾鏡*/ filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=’../img/bg.jpg’,sizingMethod=’scale’); background-repeat:no-repeat; background-position:100%,100%;}回答2:
background-attachment: fixed;background-size: cover;background-repeat: no-repeat;background-image: url(./img/desk4.jpg);background-position: 50% 50%;回答3:
你的意思是你的圖片正好是屏幕的大小?
那除非是你的圖片長寬比例和屏幕比例是一樣的,不然就要圖片變形,要么壓扁,要么變瘦,不然就是你說的情況
回答4:cover是鋪滿,可能圖會超出。contain是圖完全塞入,可能會有留白。我也遇到了這個適配需求,目前的想法是img width height100%低層級模擬背景。還沒時間試,你可以先試試。
回答5:cover和contain都是按比例縮放的,不然就用img 100%或者background-size 百分比,要做背景全屏比例要對
回答6:右邊或者下邊不完整,猜測background-position并沒有center;
cover是塞滿元素(有裁切),contain是背景最大(留黑邊),這倆都是保持寬高比的;
不要寬高比的話可以試試100% 100%,變形但是能充滿元素而且沒裁切;
必要時可以調整元素尺寸,用js動態搞下就行。
回答7:第一種方法:通過定位把背景圖居中,再通過大小為cover調整背景大小,這樣圖片不會變形且鋪滿;
p { background-size: cover; background-position: center center;}
第二種方法:通過強制背景圖寬高為100%達到鋪滿效果,但是圖片容易變形(不推薦)。
p { background-size: 100% 100%;}
相關文章:
1. 一個mysql聯表查詢的問題2. mysql - 一個表和多個表是多對多的關系,該怎么設計3. 運行python程序時出現“應用程序發生異常”的內存錯誤?4. html5 - iOS的webview加載出來的H5網頁,怎么修改html標簽select的樣式字體?5. python如何不改動文件的情況下修改文件的 修改日期6. javascript - git clone 下來的項目 想在本地運行 npm run install 報錯7. java - 我現在一個servlet中有調用socket訪問,作為socket的客戶端,8. 主從備份 - 跪求mysql 高可用主從方案9. mysql主從 - 請教下mysql 主動-被動模式的雙主配置 和 主從配置在應用上有什么區別?10. python 如何實現PHP替換圖片 鏈接
