Home  >  Article  >  Web Front-end  >  How to understand CSS cascading styles

How to understand CSS cascading styles

清浅
清浅Original
2019-02-28 11:40:163969browse

CSS cascading is a feature of browser conflict handling. Among CSS cascading style conflicts, there are reference mode conflicts, inheritance mode conflicts, and specified style conflicts. When there is a conflict between the specified style and inherited style debugging, the specified style conflict shall prevail.

CSS has three major features: inheritance, priority and cascading. What I will introduce today is the cascading nature of the three major features of CSS, which has certain reference value. I hope it will be helpful to everyone

How to understand CSS cascading styles

[Recommended course: CSS tutorial

CSS cascading

CSS cascading is browser processing A feature of conflict is that if multiple selectors are set in an attribute, only one selector will take effect at this time, and the other selectors will be removed by the cascading part.

Conditions for cascading

(1) The elements are the same

(2) The attributes are the same

(3) The priorities are the same

Cascading style conflicts

(1) Reference method conflict

CSS reference methods include inline styles, Inline style, imported style, link style, the order of priority of the four is inline style > inline style > imported style > link style

Example:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" src="style.css">
<style>
	body{
		background-color: pink;
	}
</style>
<body>
	<h1 style="background-color: red">优先级</h1>
</body>
</html>

Effect The picture is as follows:

How to understand CSS cascading styles

(2) Inheritance mode conflict

There are some properties in CSS when setting them to yourself The attribute value will be inherited by its descendants. For example, the color, font size, font shape, alignment, etc. set in CSS will be inherited. However, inheritance will not occur regarding attributes such as box, positioning, layout, etc.

The conflict of inheritance methods is to display the parent element closest to itself instead of all parent elements

Example:

<style type="text/css">
		body{
			color: pink;
		}
		#father{
			color: red;
		}
		#grandfather{
			color: blue;
		}
	</style>
</head>
<body>
	<div id="grandfather">
		<div id="father">
			<div>
				<h1>继承冲突</h1>
			</div>
		</div>
	</div>

The rendering is as follows:

How to understand CSS cascading styles

(3) Specify style conflict

Sometimes we specify Conflicts may occur due to different weights. It should also be noted here that only when the weights are the same, the "last come first" principle will be used

<style type="text/css">
		body{
			color:black;
		}
		.father{
			color:yellow;
		}
		#son{
			color:green;
		}
	</style>
</head>
<body>
	<div id="son" class="father">
		<h1>继承冲突</h1>
	</div>
</body>

The effect diagram is as follows:

Image 080.png

##Due to the weight of the id selector is 100, and the weight of the element selector is 1, so the final font color displayed is the attribute set in the id selector

Note: When the inherited style and the specified style conflict at the same time on the page, specify Style takes precedence. When the property is set! The priority can be changed when important, and the style can be overridden on any other style.

Summary: The above is the entire content of this article, I hope it will be helpful to everyone.

The above is the detailed content of How to understand CSS cascading styles. 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