相对于整个页面而不是视口设置正文背景



我已经处理了一天的问题,但似乎无法解决它。我有四个图像想用作<body>标签上的CSS背景。它们应该与页面的角对齐。

根据多种资源,如果我希望CSS背景的位置相对于页面的整个内容(在视口下方延伸),而不仅仅是视口,我应该将htmlbody元素上的min-height设置为100%。然而,这并不奏效。底部的两个角图像似乎被粘在视口的底部。

我使用这个CSS:

html {
    min-height: 100%;
    height: auto;
    margin: 0;
    padding: 0;
}
body {
    margin: 0;
    padding: 0;
    min-height: 100%;
    height: auto;
    background: url(../images/bgTopLeft.png) no-repeat left top, 
                url(../images/bgTopRight.png) no-repeat right top,
                url(../images/bgBottomLeft.png) no-repeat left bottom,
                url(../images/bgBottomRight.png) no-repeat right bottom;
}

我的HTML在这里应该不太重要,因为我使用的是<body>标记,在那里不会出错。doctype是HTML5,以防有人想知道。

我已经尝试将background-attachment的设置更改为fixed,我尝试了background-origin的各种设置,尽管这似乎与我当前的问题无关。我尝试将多个简写background分解为其中所有单独的语句。我不能让它工作。

我不想把底部的两个角图像粘贴到页面底部的页脚或div中,这只是为了样式设计。我想要的是一个<body>标签,在整个页面的四个角落有四个背景,这应该是可能的,我只是不知道这里发生了什么。

我已经写了一笔我认为你试图在这里实现的目标:

Codepen示例

我用背景大小来调整背景图像的大小。您可能需要对此进行调整以匹配背景图像的大小:

例如:

background-size: 40px 40px, 40px 40px, 40px 50px, 60px 60px;

取决于您的图像大小。

最新更新