为什么添加background-attachment: fixed;属性后会取消background-size: cover;特性?

谙古 2017-03-29 10:37:09
CSS代码:
body{
background-image:url(images/background.jpg);
background-repeat:no-repeat;
background-size: cover;
min-width: 1024px;
min-height: 600px;
height: 100vh;
}

上面这段代码设置了body的宽和高的最小值,并且用background-size: cover;设置了背景图片按原比例填充满整个body。而实际上body里面的内容已经超过了100vh,所以达到的效果就是,缩小浏览器窗口的时候背景图片会跟着缩小,直到窗口小于body的最小值之后背景图片就不会继续缩小了,body也是。
但由于背景图片不能动而且不重复,向下滑动滚动条以后,下面一片是白的。所以我加了一行代码background-attachment: fixed;让背景图片能够跟随窗口移动。
但是加了这行代码以后会发现,缩小窗口到小于min-width之后,body确实没有跟着继续缩小,而且出现了滚动条,但是背景图片却会一直缩小,根本停不下来?
这是怎么回事啊?

我原本的意思只是为了解决背景边上的白条bug,现在无论怎么放大窗口都不会出现白条了,但是却发现缩小窗口的时候,里面的内容也会跟着缩小,小到一定程度以后布局就全都乱了,所以设置了一个缩小的最小值。添加了上面的代码以后,确实缩小到最小值以后就不会继续变化了,但是背景图片却不行,还在继续变,看上去很不舒服。


这个怎么解决啊?
就是让背景图片按照原比例填充满屏幕,并且能随屏幕滚动。而用户缩小窗口以后,背景图片会跟着缩小,到最小值以后,就不再继续缩小了,相应的是出现滚动条。而背景能随屏幕移动,所以拖动滚动条以后背景图片也保持相对窗口不动,不管是横向拖动滚动条还是纵向拖动滚动条。
具体效果,就是做到和登录之后的百度首页一样的效果(只是背景图片,其它的东西就没必要了)。
...全文
810 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_38217785 2017-04-07
  • 打赏
  • 举报
回复
cover是覆盖整个body,当你的body有两页时,他也会全部覆盖(还是一张图,只不过被放大了),fix是背景图片固定不动(背景不动网页动),你已经cover了,fix就没有意义。
谙古 2017-03-31
  • 打赏
  • 举报
回复
大神
谙古 2017-03-30
  • 打赏
  • 举报
回复
求大神解答

61,112

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧