search
HomeWeb Front-endCSS TutorialAnalysis of the cascading mechanism in CSS

Analysis of the cascading mechanism in CSS

Jun 09, 2018 pm 03:43 PM
csscascade

This article mainly introduces relevant information about the CSS cascading mechanism. The cascading mechanism can solve the style conflicts between the author (the person who writes the code), the user (the person who browses the page) and the user agent (generally refers to the browser). Now I share it with you and give it as a reference.

Why is there a cascading mechanism in css

Because there may be multiple styles in css that affect a certain attribute of the same element at the same time , the cascading mechanism can resolve style conflicts between authors (people who write code), users (people who browse pages) and user agents (generally referred to as browsers).

Each style rule in the cascade has a weight value. When several of the rules take effect at the same time, the rule with the largest weight takes precedence. Generally speaking, the style weight value specified by the author is higher than the user style weight value, and the user style weight value is higher than the client (user agent) weight value. General weight value and object, whether there is! important, specificity is related to position. In the cascading order, the following weight values ​​are from small to large

(1) User agent style

(2) User general style

(3) Author general style

(4) Author important style (!important)

(5) User important style (!important)

(6) If two styles come from the same code, such as both From the author (code), and their style declarations are equally important, they are calculated according to the specificity. The ones with high specificity will cover the

with low specificity (7) If the specificity is also the same, the further back The higher the priority of the style

Why the important styles set by the user have a higher priority than the important styles of the author? The reason for this is to facilitate the user to implement some special requirements, such as adjusting the page font size, etc. .

Calculation of selector specificity

(1) If a statement appears in In the style attribute of the element, a is counted as 1;

(2) b is equal to the sum of all ID selectors in the selector and

(3) c is equal to the number in the selector The sum of the sum of all class selectors, attribute selectors, and pseudo-class selectors

(4)d is equal to the sum of the sum of all label selectors and pseudo-element selectors in the selector

a-b-c-d is the specificity of the selector. The comparison order is from a first. Whichever one is bigger first will have a higher priority.

Note:

  1. inheritance has the lowest priority and has no specificity

  2. combining characters (eg, >) and The specificity of the universal selector (*) is 0

.box{} /*特异度=0,0,1,0*/
.box p{} /*特异度=0,0,1,1*/
#nav li{} /*特异度=0,1,0,1*/
p:first-line{} /*特异度=0,0,0,2*/
 /*特异度=1,0,0,0*/

The above is the entire content of this article, I hope it will be helpful to everyone's study , please pay attention to the PHP Chinese website for more related content!

Related recommendations:

Analysis of percentage problems in CSS

The above is the detailed content of Analysis of the cascading mechanism in CSS. For more information, please follow other related articles on the PHP Chinese website!

Statement
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
A Little Reminder That Pseudo Elements are Children, Kinda.A Little Reminder That Pseudo Elements are Children, Kinda.Apr 19, 2025 am 11:39 AM

Here's a container with some child elements:

Menus with 'Dynamic Hit Areas'Menus with 'Dynamic Hit Areas'Apr 19, 2025 am 11:37 AM

Flyout menus! The second you need to implement a menu that uses a hover event to display more menu items, you're in tricky territory. For one, they should

Improving Video Accessibility with WebVTTImproving Video Accessibility with WebVTTApr 19, 2025 am 11:27 AM

"The power of the Web is in its universality. Access by everyone regardless of disability is an essential aspect."- Tim Berners-Lee

Weekly Platform News: CSS ::marker pseudo-element, pre-rendering web components, adding Webmention to your siteWeekly Platform News: CSS ::marker pseudo-element, pre-rendering web components, adding Webmention to your siteApr 19, 2025 am 11:25 AM

In this week's roundup: datepickers are giving keyboard users headaches, a new web component compiler that helps fight FOUC, we finally get our hands on styling list item markers, and four steps to getting webmentions on your site.

Making width and flexible items play nice togetherMaking width and flexible items play nice togetherApr 19, 2025 am 11:23 AM

The short answer: flex-shrink and flex-basis are probably what you’re lookin’ for.

Position Sticky and Table HeadersPosition Sticky and Table HeadersApr 19, 2025 am 11:21 AM

You can't position: sticky; a

Weekly Platform News: HTML Inspection in Search Console, Global Scope of Scripts, Babel env Adds defaults QueryWeekly Platform News: HTML Inspection in Search Console, Global Scope of Scripts, Babel env Adds defaults QueryApr 19, 2025 am 11:18 AM

In this week's look around the world of web platform news, Google Search Console makes it easier to view crawled markup, we learn that custom properties

IndieWeb and WebmentionsIndieWeb and WebmentionsApr 19, 2025 am 11:16 AM

The IndieWeb is a thing! They've got a conference coming up and everything. The New Yorker is even writing about it:

See all articles

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

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Integrate Eclipse with SAP NetWeaver application server.