Home Web Front-end CSS Tutorial div css background background

div css background background

Nov 24, 2016 am 10:02 AM

Background attribute - background is the core attribute in CSS. You should have a good understanding of it. This article discusses in detail all the related properties of background, even background-attachment, and introduces us to what it will look like in the upcoming CSS3, as well as the newly added background properties.

Using the background properties in CSS2

Review

There are five background-related properties in css2. They are:

background-color: The color that completely fills the background

background-image: The image used as the background​​​​​​

background-repeat: Determine whether the background image is repeated Flat

background-attachment: Determine whether the background image scrolls with the page

These attributes can be written in a simple attribute: background. It must be pointed out that background is responsible for the background of the content part of the element, including padding and border, but not margin. This is how it is handled in Firefox, Safari and Opera, as well as IE8. However, borders are not included in IE7 and the damned IE6, and the difference is as shown in the picture example below.

In IE7 and IE6, Background does not include border

Basic attributes

Background color attribute

background-color is used to describe the color of the filled background. There are multiple ways to define the color of the fill. The following methods are equivalent:

background-color: blue;

background-color: rgb(0, 0, 255);

background-color: #0000ff ;

background-color can also be set to transparent, so that the elements below it can be displayed.

Background image property

background-image allows you to use your own image as the background. It is closely related to background-color. Once your image is not large enough to tile the entire element background, the empty portion will display the color set by background-color. It is extremely simple to use, but you must remember the positional relationship between the image and the css file:

background-image: url(image.jpg);

If the image is in the folder, write it like this, using relative paths:

background-image: url(images/image.jpg);

Background repeat attribute

By default, your image will repeat horizontally and vertically until it covers the entire element. But sometimes you might just want to repeat in one direction. Then set it like this:

background-repeat: repeat; /* Default value. The image will be spread repeatedly in all directions */

background-repeat: no-repeat; /* No repetition. Only one picture appears*/

background-repeat: repeat-x; /* Horizontal repeat spread*/

background-repeat: repeat-y; /* Vertical repeat spread*/

background-repeat: inherit; / * Use the background-repeat attribute value of the parent element. */

Background position attribute

The background-position attribute controls the position of the background image in the element. The key to mastering is that background-position is the upper left corner of the image.

The following is a demonstration of the background-position property. Of course we set the background-repeat attribute to no-repeat.

/* Example 1: Default. */

background-position: 0 0; /* i.e. the upper left corner of the element. */

/* Example 2: Move to the right. */

background-position: 75px 0;

/* Example 3: Move to the left. */

background-position: -75px 0;

/* Example 4: Move down. */

background-position: 0 100px;

背 You can set the position of the background picture at will

Background-posity attributes can also work in keywords, percentage and other units, not to be accurately used in pixels (PX).

Keywords are very commonly used, in the horizontal direction they are:

left

center

right

in the vertical direction:

top

center

bottom

Use them like before:

background-position: top right;

Percentage is used in the same way:

background-position: 100% 50%;

The effect is like this:

The smiley face image is set to the middle of the right side of the element

Background attachment property

The background-attachment property defines what happens to the background image when the user scrolls the page. It has three possible values: scroll, fixed and inherit. Inherit still inherits the settings of its parent element. To fully understand the background-attachment attribute. First, you have to figure out what happens to the web page when the user scrolls the page. If you set the value to fixed, then when you scroll down the page, the content will scroll down, but the background will not scroll with it. The result is as if the content is scrolling upwards. Of course, if you set the value to scroll, the background will scroll.

Let’s look at an example below:

background-image: url(test-image.jpg);

background-position: 0 0;

background-repeat: no-repeat;

background-attachment: scroll ;

When we scroll down the page, the background image scrolls up until it disappears.

Look at another fixed example:

background-image: url(test-image.jpg);

background-position 0 100% Move within, here is an example:

background-image: url(test-image.jpg);

background-position: 0 100%;

background-repeat: no-repeat;

background-attachment: fixed ;

Part of the picture disappeared because it went out of the element boundary.

Simple Background attribute

We can write these attribute settings in an attribute. Its format is as follows:

background:

For example, these settings...

background-color: transparent;

background-image: url(image.jpg);

background-position: 50% 0 ;

background-attachment: scroll;

background-repeat: repeat-y;

... can be written as:

background: transparent url(image.jpg) 50% 0 scroll repeat-y;

And you don’t need to set every value. If you don't write it, the default value will be used. Therefore, the above can also be written like this:

background: url(image.jpg) 50% 0 repeat-y;

"unconventional" application of background

In addition to setting beautification elements, the background attribute also has a wide range of other Non-routine uses.

Faux Columns

When using float attribute layout, it can be difficult to ensure that the length of two columns is equal. If the two elements are of different sizes, the background image will be messed up. Faux columns are a simple solution, first published on A List Apart.

To put it simply, set an overall background image in their parent element, and the position of the vertical rows in the image exactly matches the actual position of the separation.

Text Replacement

The choice of fonts on the web is slim. Our common method is to create pictures of text, but doing this alone is not friendly to search engines. A popular way to do this is to use the background attribute to display the image of the text and hide the text above it. This is friendly to search engines and screen readers, and you can see cool fonts in the browser.

For example, text information is written like this:

Blogroll

If the text image is 200px wide and 75px high, then we use the following css code to represent the entire image :

h3.blogroll {

width: 200px;

height: 75px; /* to display the entire image. */

background:url(blogroll-text.jpg) 0 0 no-repeat; /* Set image */

text-indent: -9999px; /* Move text 9999px to the left to hide text*/

}

Easier Bullet Points

The default style of the unordered list option may not look so good. Then we use background images to make them look nicer:

ul {

list-style: none; /* Remove the default style. */

}

ul li {

padding-left: 40px; / * Keep the content inside and leave space for the background display. */

background: url(bulletpoint.jpg) 0 0 no-repeat;

}

Background properties in CSS3

There are a lot about background in CSS3 Changes in properties. The most obvious one is the addition of support for multiple background images, as well as four new attributes and changes to existing attributes.

Multiple background images

CSS3 allows you to use more than one background image for an element. The code is the same as in CSS2, you can separate several images with commas. The first declared image will appear at the top of the element, like this:

background-image: url(top-image.jpg), url(middle-image.jpg), url(bottom-image.jpg);

New attribute 1: Background Clip

This attribute brings us back to the original question, about the border and background attributes. The

background-clip property allows you to control where your background is displayed. Possible values ​​are:

background-clip: border-box;

background is displayed within the border, the same way it is now. .

background-clip: padding-box;

backgrounds are displayed within the padding, not the border, which is the same as IE6.

background-clip: content-box;

backgrounds are only displayed within the content, not border or padding.

background-clip: no-clip;

Default value, the same as border-box.

New attribute 2: Background Origin

This attribute needs to be used together with the background-position attribute. You can change the way background-position is calculated (just like background-clip).

background-origin: border-box;

background-position is calculated from border.

background-origin: padding-box;

background-position is calculated from padding.

background-origin: content-box;

background-position is calculated starting from the content.

For examples of the application of background-clip and background-origin properties, please see CSS3.info.

New Property 3: Background Size

The background-size property is used to redefine the size of your background image. Possible values ​​are:

background-size: contain;

Shrink the image to fit the element size.

background-size: cover;

Expand the image to fit the element size.

background-size: 100px 100px;

Redefine size.

background-size: 50% 100%;

Redefine with percentage.

You can take a look at the example: CSS 3 specifications

New attribute 4: Background Break

In CSS 3, elements can be split into multiple parts (for example, the inline element span can occupy multiple lines). The background-break property controls how the background image is displayed in multiple sections.

Possible values ​​are:

Background-break: continuous; Default value

Background-break: bounding-box;: Add the value between the two parts into consideration.

Background-break: each-box;: Consider each section individually.

Changes in the Background Color attribute

The background-color attribute in CSS3 supports foreground color and background color: background-color: green / blue;

For this example, the default color is green. If it cannot be displayed, then Use blue.

Changes to the Background Repeat property

Do you still remember that in CSS 2, images may partially disappear due to crossing the border? CSS 3 has two new possible values ​​to solve this problem:

space: Set the spacing between repeated images.

round: Repeating images automatically resize to exactly fill the element.

background-repeat: example of space: CSS 3 specifications.

Background Attachment property changes

background-attachment has a new possible value: local.. It is related to scrollable elements (such as having the attribute overflow: scroll;). When the background-attachment value is scroll, the background image will not scroll with the content. Now with background-attachment:local, images can scroll with the content.


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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Vue 3 Vue 3 Apr 02, 2025 pm 06:32 PM

It's out! Congrats to the Vue team for getting it done, I know it was a massive effort and a long time coming. All new docs, as well.

Building an Ethereum app using Redwood.js and Fauna Building an Ethereum app using Redwood.js and Fauna Mar 28, 2025 am 09:18 AM

With the recent climb of Bitcoin’s price over 20k $USD, and to it recently breaking 30k, I thought it’s worth taking a deep dive back into creating Ethereum

Can you get valid CSS property values from the browser? Can you get valid CSS property values from the browser? Apr 02, 2025 pm 06:17 PM

I had someone write in with this very legit question. Lea just blogged about how you can get valid CSS properties themselves from the browser. That's like this.

A bit on ci/cd A bit on ci/cd Apr 02, 2025 pm 06:21 PM

I'd say "website" fits better than "mobile app" but I like this framing from Max Lynch:

Stacked Cards with Sticky Positioning and a Dash of Sass Stacked Cards with Sticky Positioning and a Dash of Sass Apr 03, 2025 am 10:30 AM

The other day, I spotted this particularly lovely bit from Corey Ginnivan’s website where a collection of cards stack on top of one another as you scroll.

Using Markdown and Localization in the WordPress Block Editor Using Markdown and Localization in the WordPress Block Editor Apr 02, 2025 am 04:27 AM

If we need to show documentation to the user directly in the WordPress editor, what is the best way to do it?

Comparing Browsers for Responsive Design Comparing Browsers for Responsive Design Apr 02, 2025 pm 06:25 PM

There are a number of these desktop apps where the goal is showing your site at different dimensions all at the same time. So you can, for example, be writing

Why are the purple slashed areas in the Flex layout mistakenly considered 'overflow space'? Why are the purple slashed areas in the Flex layout mistakenly considered 'overflow space'? Apr 05, 2025 pm 05:51 PM

Questions about purple slash areas in Flex layouts When using Flex layouts, you may encounter some confusing phenomena, such as in the developer tools (d...

See all articles