Detailed explanation of the advanced css background-attachment property

高洛峰
Release: 2017-03-13 10:10:43
Original
2273 people have browsed it

This article explains the advanced css background-attachment attribute in detail

The premise is to define the background-image attribute, and then use background-attachment to indicate that the position of the background image is fixed to the view Orally, it still moves with the containing block. It can be simply understood as defining how the background image moves along the scroll axis.


Value:

scroll: Default value, the background image is fixed relative to the element, and the background moves as the page scrolls, that is, the background and content are bound.
fixed: The background image is fixed relative to the viewport, so the background does not move as the page scrolls, which is equivalent to the background being set on the body.
local: The background image is fixed relative to the element content,
inhert:inherits , nothing to say.

This attribute can be applied to any element.

1. scroll [Background Image Scroll]
Set background-attachment:scroll. The background image is fixed relative to the element itself. When the content moves, the background image also moves. The border attached to the element.

详解css background-attachment属性进阶

local

Note:

For scroll, the background generally scrolls with the content, but there is an exception.

For scrollable elements (elements set to overflow:scroll). When background-attachment is set to scroll, the background image will not scroll as the element content scrolls.

详解css background-attachment属性进阶

2. local [scrolling element background image scrolling]
For elements that can be scrolled (elements set to overflow:scroll), set background-attachment:local, the background will scroll as the content scrolls.

Because the background image is positioned relative to the content of the element itself and is initially fixed, the background image scrolls with the content after the scroll bar appears on the element.


<style>
p{
    width: 200px;
    height: 350px;
    border: 1px solid red;
    background-image: url(img/img_tree.png);
    background-repeat: no-repeat;
    background-attachment: local;
    overflow: scroll;
    line-height: 1.5;
}
</style>
<body>
    <p>
    1内容超出会出现滚动条
    2内容超出会出现滚动条
    3内容超出会出现滚动条
    4内容超出会出现滚动条
    5内容超出会出现滚动条
    6内容超出会出现滚动条
    7内容超出会出现滚动条
    8内容超出会出现滚动条
    9内容超出会出现滚动条
    10内容超出会出现滚动条
    11内容超出会出现滚动条
    12内容超出会出现滚动条
    13内容超出会出现滚动条
    14内容超出会出现滚动条
    15内容超出会出现滚动条
    16内容超出会出现滚动条
    17内容超出会出现滚动条
    18内容超出会出现滚动条
    19内容超出会出现滚动条
    20内容超出会出现滚动条
    </p>
</body>
Copy after login

详解css background-attachment属性进阶

3. Fixed: [Background image is still]
The background image is fixed relative to the viewport , even if the element has a scroll bar, the background image will not move with the content.

Fixed usage is as follows:


<style>
body{
    background-image: url(img/cartooncat.png);
    background-position: bottom left;
    background-attachment: fixed;
    background-repeat: no-repeat;
    height: 1000px;
}
</style>
</head>
<body>
    <h1>下拉看效果:</h1>
</body>
Copy after login

详解css background-attachment属性进阶

Or look at mozilla’s demo.

I want to emphasize my opinion here:

Set background-attachment: fixed to the background image of any element; the effect is the same, relative to the viewport, because a web page There is only one viewport, and the background has nothing to do with the element. The only thing that matters is that if the element is not visible, the background image is not visible.

4. Multiple background images background-attachment
You can also set background-attachment for multiple background images


body {
  background-image: url("img1.png"), url("img2.png");
  background-attachment: scroll, fixed;
}
Copy after login


The above is the detailed content of Detailed explanation of the advanced css background-attachment property. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
css
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template