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. python - 请问这两个地方是为什么呢?2. sql语句 - 如何在mysql中批量添加用户?3. mysql 可以从 TCP 连接但是不能从 socket 链接4. 事务 - mysql共享锁lock in share mode的实际使用场景5. mysql - PHP定时通知、按时发布怎么做?6. mysql - 数据库建字段,默认值空和empty string有什么区别 1107. 怎么php怎么通过数组显示sql查询结果呢,查询结果有多条,如图。8. node.js - mysql如何通过knex查询今天和七天内的汇总数据9. mysql - JAVA怎么实现一个DAO同时实现查询两个实体类的结果集10. javascript - 按钮链接到另一个网址 怎么通过百度统计计算按钮的点击数量
