CSS3 sets a mask for the background image and solves the problem of mask style inheritance

CSS3 sets a mask for the background image and solves the problem of mask style inheritance

In many cases, you need to process the background of the picture, such as setting transparency, blurring, etc.

However, if you set these effects directly on the tag where the background image is located, these styles will be inherited by the child tags.

Example 1: Setting a blur effect on the background label affects the text in the sub-labels

   <style>
        .parent{
            background: url('./test.jpg') no-repeat center;
            filter: blur(3px)
        }
        .son{
            filter: blur(0);
            /*
            Setting the same attribute in a child tag cannot override the inherited style*/
        }
    </style>

    <div class="parent">
        <p class="son">Hello</p>
    </div>

Solution:

Add a tag to the parent tag, make it absolutely positioned and fill the parent tag, and set the background/style in the tag.

   <style>
        .parent{
            position: relative;
            /*Let the parent tag be relatively positioned, and let .middle be relatively positioned*/
        }
        .middle{
            background: url('./test.jpg') no-repeat center;
            filter: blur(3px);

            position: absolute;
            height: 100%;
            width: 100%;
            
            z-index: -1;
            /*Reduce the layer height to prevent covering other sub-elements*/
        }
        .son{
        }
    </style>
    
    <div class="parent">
        <div class="middle"></div>
        <p class="son">Hello</p>
    </div>

This concludes the article on how to set a mask for a background image using CSS3 and solve the problem of mask style inheritance. For more information on CSS3 background image masking, please search previous articles on 123WORDPRESS.COM or continue browsing the following related articles. I hope you will support 123WORDPRESS.COM in the future!

<<:  Introduction to the difference between OBJECT and EMBED tags used to display flash content

>>:  Detailed explanation of the new array methods in JavaScript es6

Recommend

English: A link tag will automatically complete href in IE

English: A link tag will automatically complete h...

Implementation of React virtual list

Table of contents 1. Background 2. What is a virt...

XHTML tutorial, a brief introduction to the basics of XHTML

<br />This article will briefly introduce yo...

JavaScript to achieve a simple message board case

Use Javascript to implement a message board examp...

Detailed explanation of a method to rename procedure in MYSQL

Recently I have used the function of renaming sto...

Similar to HTML tags: strong and em, q, cite, blockquote

There are some tags in XHTML that have similar fu...

Monitor the size change of a DOM element through iframe

A common problem encountered during the developme...

MySQL database operations and data types

Table of contents 1. Database Operation 1.1 Displ...

Linux uses NetworkManager to randomly generate your MAC address

Nowadays, whether you are on the sofa at home or ...

JavaScript implements the generation of 4-digit random verification code

This article example shares the specific code for...

Detailed tutorial on installation and configuration of MySql 5.7.17 winx64

1. Download the software 1. Go to the MySQL offic...

Vue custom directive details

Table of contents 1. Background 2. Local custom i...

Manually install mysql5.7.10 on Ubuntu

This tutorial shares the process of manually inst...

Detailed explanation of MySql data type tutorial examples

Table of contents 1. Brief Overview 2. Detailed e...