


Set background gradients of different colors using the transparency of the background gradient_html/css_WEB-ITnose
The project has been working on color configuration schemes for different themes in the past few days. The color of the entire theme must be configured according to the color input by the user. What is troublesome is that in one of the themes, all the list header background colors are different. It is a linear gradient of 2 to 3 sets of gradient values, that is, different but very similar gradient colors are generated based on the color values input by the user. I checked some information on the Internet, and now there is js that supports automatic filling of gradient colors based on the web page content you input. But for people like me who are not very good at js, I still want to find some method from css3.
I found that the transparency in the background gradient of css3 can solve this problem (provided that the colors of the background gradient are similar).
I will briefly talk about the linear gradient in css3 background gradient here. The general structure of a linear gradient is:
background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);
Each browser renders it differently and is divided into:
Webkit:
background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);
The following writing method is for the old version of safari
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0.1)), color-stop(40%, rgba(0, 0, 0, 0.1)), color-stop(98%, rgba(0, 0, 0, 0.2)),color-stop(100%, #FFFFFF));
Mozilla:
background-image: -moz-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);
The writing method of Firefox rendering gradient is roughly the same as Safari. The difference is that the gradient attribute needs to be changed to -moz-linear-gradient
Opera:
background-image: -o-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);
According to the above writing method, let Opera browser render and directly change the attribute to -o-linear-gradient. Isn’t it very simple?
IE:
IE is stubborn and does not support gradients, but provides gradient filters
filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr='#22FFFFFF', EndColorStr='#33000000');
Having said so much, are you curious about the 0.1 in rgba(0, 0, 0, 0.1) in the example? Yes, the key to solving this headache is just that - gradient transparency. Setting the gradient transparency (value from 0.1-0.9) can make the gradient color under different values of transparency. That is to say, through transparency, the background can show the background color under different transparency.
The picture below is the background gradient generated by the above code:
Can’t you see that the gradient is transparent (it feels gray)? That's right, because the color value is from white to black, the transition color in the middle is naturally gray. But if you add a background color, the effect will come out.
For example, let’s add a background-color: #92D050:
You only need to configure the background-color to make the background appear different Gradient color.
Complete code:
1 background-image: -moz-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);2 background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, rgba(255, 255, 255, 0.1)), color-stop(40%, rgba(0, 0, 0, 0.1)), color-stop(98%, rgba(0, 0, 0, 0.2)),color-stop(100%, #FFFFFF));3 background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);4 background-image: -o-linear-gradient(top, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);5 filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr='#22FFFFFF', EndColorStr='#33000000');6 background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.1) 0%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);7 background-color: #669900;
The color (rgb) in rgba() is generally white (255, 255, 255) or black (0, 0,0), and the transparency setting depends on what kind of gradient effect you want.
Here are a few examples of different gradient colors:
background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.9) 10%, rgba(0, 0, 0, 0.1) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);
background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.9) 2%, rgba(0, 0, 0, 0.5) 40%, rgba(0, 0, 0, 0.2) 98%, #FFFFFF 100%);
background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.3) 2%, rgba(0, 0, 0, 0.5) 40%, rgba(0, 0, 0, 0.2) 98%, rgba(255, 255, 255, 0.9) 99%);
So if you can use the background gradient well The transparency can define a unified background gradient color to a large extent, and the user only needs to enter a color field to configure the theme to the desired gradient effect. Unfortunately, for now, this method can only be applied to themes with similar background gradient colors. Background gradients of more than one color still have to be written this way
background: linear-gradient(to bottom, #396E8E 0%, #336888 29%, #225777 67%, #194E6E 100%);

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

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

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Native lazy loading is a built-in browser function that enables lazy loading of pictures by adding loading="lazy" attribute to the tag. 1. It does not require JavaScript or third-party libraries, and is used directly in HTML; 2. It is suitable for pictures that are not displayed on the first screen below the page, picture gallery scrolling add-ons and large picture resources; 3. It is not suitable for pictures with first screen or display:none; 4. When using it, a suitable placeholder should be set to avoid layout jitter; 5. It should optimize responsive image loading in combination with srcset and sizes attributes; 6. Compatibility issues need to be considered. Some old browsers do not support it. They can be used through feature detection and combined with JavaScript solutions.

srcset and sizes are key properties for HTML implementation of responsive images. srcset provides multiple image sources and their width or pixel density, such as 400w and 800w, and the browser selects the appropriate image accordingly; sizes defines the display width of the image under different screen widths, such as (max-width: 600px)100vw, 50vw, so that the browser can more accurately match the image size. In actual use, you need to prepare multi-size pictures, clearly named, design layout in accordance with media query, and test the performance of the equipment to avoid ignoring sizes or unit errors, thereby saving bandwidth and improving performance.

The main difference is that textarea supports multiple lines of text input, while inputtext is only available in a single line. 1. Use inputtype="text" to be suitable for short and single-line user input, such as username, email address, etc., and can set maxlength to limit the number of characters. The browser provides automatic filling function, making it easier to uniformly style across browsers; 2. Use textarea for scenarios that require multiple lines of input, such as comment boxes, feedback forms, support line breaks and paragraphs, and can control the size through CSS or disable the adjustment function. Both support form features such as placeholders and required fills, but textarea defines the size through rows and cols, and input uses the size attribute.

It is a block-level element, used to divide large block content areas; it is an inline element, suitable for wrapping small segments of text or content fragments. The specific differences are as follows: 1. Exclusively occupy a row, width and height, inner and outer margins can be set, which are often used in layout structures such as headers, sidebars, etc.; 2. Do not wrap lines, only occupy the content width, and are used for local style control such as discoloration, bolding, etc.; 3. In terms of usage scenarios, it is suitable for the layout and structure organization of the overall area, and is used for small-scale style adjustments that do not affect the overall layout; 4. When nesting, it can contain any elements, and block-level elements should not be nested inside.

To get started with HTML quickly, you only need to master a few basic tags to build a web skeleton. 1. The page structure is essential, and, which is the root element, contains meta information, and is the content display area. 2. Use the title. The higher the level, the smaller the number. Use tags to segment the text to avoid skipping the level. 3. The link uses tags and matches the href attributes, and the image uses tags and contains src and alt attributes. 4. The list is divided into unordered lists and ordered lists. Each entry is represented and must be nested in the list. 5. Beginners don’t have to force memorize all tags. It is more efficient to write and check them while you are writing. Master the structure, text, links, pictures and lists to create basic web pages.

To achieve a basic pop-up effect, you need to follow the following steps: 1. Structure: Use HTML to create trigger buttons, mask layer and pop-up content area; 2. Style: Set default hidden, centered layout, mask background and close button styles through CSS; 3. Interaction: Use JavaScript to bind click events to control pop-up display and hide, and can expand the ESC key closing function; 4. Optimization: Add CSS animation to improve user experience. The entire process does not require a third-party library, which is suitable for quickly realizing basic pop-up functions.

Webworkers are independent threads running in the browser background, used to perform time-consuming tasks without blocking the user interface. They are implemented through JavaScript files and are started by scripts in HTML pages, but once run, they are separated from the main thread. 1. Webworkers cannot directly access the DOM to ensure page stability; 2. They realize secure communication with the main thread through postMessage() and onmessage; 3. It is suitable for processing CPU-intensive tasks such as images, complex computing, data analysis; 4. It supports some APIs such as setTimeout, fetch and IndexedDB; 5. When using it, you need to pay attention to debugging difficulties, memory usage, cross-domain restrictions and other issues.

ShadowDOM is a technology used in web component technology to create isolated DOM subtrees. 1. It allows the mount of an independent DOM structure on ordinary HTML elements, with its own styles and behaviors, and does not affect the main document; 2. Created through JavaScript, such as using the attachShadow method and setting the mode to open; 3. When used in combination with HTML, it has three major features: clear structure, style isolation and content projection (slot); 4. Notes include complex debugging, style scope control, performance overhead and framework compatibility issues. In short, ShadowDOM provides native encapsulation capabilities for building reusable and non-polluting UI components.
