最小的背景不显示
Smallest background doesn't show
我正在尝试制作一个具有响应式背景的移动友好型网站。为此,我制作了 4 种不同尺寸的相同背景:360 像素宽、600 像素宽、1000 像素宽和 1500 像素宽。我使用媒体查询来确定要显示的背景。
/*------------- Styles for different screen sizes -------------
/* For width smaller than 400px: */
body {
background-image: url('../data/background/360.png');
background-size: 100% 100%;
background-repeat: no-repeat;
background-attachment:fixed;
}
/* For width bigger than 600px: */
@media only screen and (min-width: 600px){
body {
background-image: url('../data/background/600.png');
}
}
/* For width bigger than 1000px: */
@media only screen and (min-width: 1000px){
body {
background-image: url('../data/background/1000.png');
}
}
/* For width bigger than 1500px: */
@media only screen and (min-width: 1500px){
body {
background-image: url('../data/background/1920.png');
}
}
/*-------------------------------------------------------------*/
但是,当屏幕小于 600 像素时,最小背景 (360.png) 不会显示。当我调整屏幕大小时,所有其他背景都会显示出来。这里有什么问题? url 是正确的。
您可以尝试反转所有内容并使用最大宽度而不是最小宽度。这意味着 max-width: 600
将仅在宽度小于 600 时应用...此外,看到问题的 jsbin.com 演示会很酷,也许您有其他优先级更高的东西来覆盖 css 您期望的值。
您的代码运行良好:JSFIDDLE
唯一的问题可能是:
background-attachment:fixed;
因为大部分手机都禁用了。
要解决这个问题,您应该添加如下内容:
@media (max-width: 599px){
body {
background-attachment:scroll;
background-size: cover;
}
}
css 代码完全有效。你把 meta 标签放在 head 部分了吗
尝试使用它会起作用。
<meta name="viewport" content="width=device-width, initial-scale=1">
把它放在头部。
你可以试试这些背景属性
body{ background-image: url('../data/background/360.png');background-size:100% 100%; background-position:center center;background-repeat: no-repeat;}
我正在尝试制作一个具有响应式背景的移动友好型网站。为此,我制作了 4 种不同尺寸的相同背景:360 像素宽、600 像素宽、1000 像素宽和 1500 像素宽。我使用媒体查询来确定要显示的背景。
/*------------- Styles for different screen sizes -------------
/* For width smaller than 400px: */
body {
background-image: url('../data/background/360.png');
background-size: 100% 100%;
background-repeat: no-repeat;
background-attachment:fixed;
}
/* For width bigger than 600px: */
@media only screen and (min-width: 600px){
body {
background-image: url('../data/background/600.png');
}
}
/* For width bigger than 1000px: */
@media only screen and (min-width: 1000px){
body {
background-image: url('../data/background/1000.png');
}
}
/* For width bigger than 1500px: */
@media only screen and (min-width: 1500px){
body {
background-image: url('../data/background/1920.png');
}
}
/*-------------------------------------------------------------*/
但是,当屏幕小于 600 像素时,最小背景 (360.png) 不会显示。当我调整屏幕大小时,所有其他背景都会显示出来。这里有什么问题? url 是正确的。
您可以尝试反转所有内容并使用最大宽度而不是最小宽度。这意味着 max-width: 600
将仅在宽度小于 600 时应用...此外,看到问题的 jsbin.com 演示会很酷,也许您有其他优先级更高的东西来覆盖 css 您期望的值。
您的代码运行良好:JSFIDDLE
唯一的问题可能是:
background-attachment:fixed;
因为大部分手机都禁用了。
要解决这个问题,您应该添加如下内容:
@media (max-width: 599px){
body {
background-attachment:scroll;
background-size: cover;
}
}
css 代码完全有效。你把 meta 标签放在 head 部分了吗
尝试使用它会起作用。
<meta name="viewport" content="width=device-width, initial-scale=1">
把它放在头部。
你可以试试这些背景属性
body{ background-image: url('../data/background/360.png');background-size:100% 100%; background-position:center center;background-repeat: no-repeat;}