- 后代选择器:在某个元素的后面,
body p {}
- 子选择器:只有一代,
body > p {}
- 相邻兄弟选择器:只有一个 相邻的一个向下的标签,
.榨菜 + p {}
- 通用选择器:当前选中元素的向下的所有兄弟元素,
.榨菜 ~ p {}
1、结构层次示图
(1)图表理解
(2)代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>层次选择器</title> <style> p { background: sandybrown; } </style> </head> <body> <p>p1</p> <p>p2</p> <p>p3</p> <ul> <li> <p>p4</p> </li> <li> <p>p5</p> </li> <li> <p>p6</p> </li> </ul> </body> </html>
(3)网页展示
2、后代选择器(便于记忆的名称)
(1)定义:在某个元素后面
样式:
body p { background: yellow; }
如:爷爷 爸爸 你 儿子 孙子,包括选中的所有后代
(2)代码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>层次选择器</title> <style> /* 选择器 p { background: sandybrown; } */ body p { background: yellow; } </style> </head> <body> <p>p1</p> <p>p2</p> <p>p3</p> <ul> <li> <p>p4</p> </li> <li> <p>p5</p> </li> <li> <p>p6</p> </li> </ul> </body> </html>
(3)页面
3、子选择器
(1)定义:一代,如儿子这一代
样式:
body > p { background: slateblue; }
(2)代码:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>层次选择器</title> <style> /* 选择器 p { background: sandybrown; } */ /*后代选择器 body p{ background: yellow; } */ body > p { background: slateblue; } </style> </head> <body> <p>p1</p> <p>p2</p> <p>p3</p> <ul> <li> <p>p4</p> </li> <li> <p>p5</p> </li> <li> <p>p6</p> </li> </ul> </body> </html>
(3)页面:
4、相邻兄弟选择器
(1)定义:同辈,只选择了同一级别中的一个,而且是相邻的向下的一个
样式:
.榨菜 + p { background: saddlebrown; }
(2)代码:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>层次选择器</title> <style> /* 选择器 p { background: sandybrown; } */ /*后代选择器 body p { background: yellow; } */ /*子代选择器 body > p { background: slateblue; } */ .榨菜 + p { background: saddlebrown; } </style> </head> <body> <p>p1</p> <p class="榨菜">p2</p> <p>p3</p> <ul> <li> <p>p4</p> </li> <li> <p>p5</p> </li> <li> <p>p6</p> </li> </ul> </body> </html>
(3)页面:
5、通用选择器
(1)定义: 当前选中的元素的向下的所有兄弟元素,不仅仅一个
样式:
.榨菜 ~ p { background: pink; }
(2)代码:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>层次选择器</title> <style> /* 选择器 p { background: sandybrown; } */ /*后代选择器 body p { background: yellow; } */ /*子代选择器 body > p { background: slateblue; } */ /*相邻兄弟选择器 .榨菜 + p { background: saddlebrown; } /* */ .榨菜 ~ p { background: pink; } </style> </head> <body> <p>p1</p> <p class="榨菜">p2</p> <p>p3</p> <p>p4</p> <ul> <li> <p>p4</p> </li> <li> <p>p5</p> </li> <li> <p>p6</p> </li> </ul> </body> </html>
(3)页面:
摘自:https://blog.csdn.net/weixin_52484978/article/details/127176376