ASCII码 ASCII码

css基础-选择器、权重、伪类选择器

发布于:2022-04-29 20:29:14  栏目:技术文档

css基础-选择器、权重、伪类选择器

1. 实例演示选择器权重,并写出详细计算过程

效果图

1.

2.

3.

html代码

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <link rel="stylesheet" href="4.27作业1.css">
  8. <title>实例演示选择器权重t</title>
  9. </head>
  10. <body>
  11. <h1 class="x" id="xxx">hello word</h1>
  12. <h2 class="y" id="yyy">hello word</h2>
  13. <h3 class="t" id="ttt">test</h3>
  14. </body>
  15. </html>

导入的css代码

  1. /* 0个id 一个class 一个tag
  2. 权重0.1.1 */
  3. h1.x{
  4. color: blue;
  5. }
  6. /* 0个id 0个class 一个tag
  7. 权重0.0.1 */
  8. h1{
  9. color: red;
  10. }
  11. /* 0.1.1>0.0.1 所以显示蓝色 */
  12. /* 1个id 1个class 0个tag
  13. 权重1.1.0 */
  14. .y#yyy{
  15. color: blue;
  16. }
  17. /* 1个id 1个class 1个tag
  18. 权重1.1.1 */
  19. h2.y#yyy{
  20. color: red;
  21. }
  22. /* 1.1.1>1.1.0 所以显示红色 */
  23. /* 1个id 1个class 1个tag
  24. 权重1.1.1 */
  25. h3.t#ttt{
  26. color: red;
  27. }
  28. /* 0个id 0个class 1个tag
  29. 权重0.0.1 */
  30. h3{
  31. color: blue !important
  32. }
  33. /* 1.1.1>0.0.1
  34. 但是使用 !important 为最高指示 忽略任何权重
  35. 所以显示蓝色 */

2. 实例演示常用伪类选择器,并写出参数计算过程

2.1 演示选择子元素,选中后代元素,选中相邻兄弟,选中后面所有兄弟

效果图

子元素

后代元素

选中相邻兄弟元素

选中后面所有兄弟元素

html代码

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <style>
  7. @import url(4.27作业2.css);
  8. </style>
  9. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  10. <title>实例演示常用伪类选择器,并写出参数计算过程</title>
  11. </head>
  12. <body>
  13. <ul class="list">
  14. <li class="test">test1</li>
  15. <li class="test">test2
  16. <ul class="item">
  17. <li>text2-1</li>
  18. <li>text2-2</li>
  19. <li>text2-3</li>
  20. </ul>
  21. </li>
  22. <li class="test1">test3</li>
  23. <li class="test">test4</li>
  24. <li class="test">test5</li>
  25. <li class="test">test6</li>
  26. </ul>
  27. </body>
  28. </html>

导入的css代码

  1. /* 选中子元素 > */
  2. ul.list>li{
  3. border: 1px solid
  4. }
  5. /* 选中后代元素 空格 */
  6. ul.list li{
  7. border: 1px solid
  8. }
  9. /* 选中相邻兄弟 + */
  10. /* li.test1{
  11. background-color: aquamarine;
  12. }
  13. li.test1+li.test{
  14. background-color: aqua;
  15. } */
  16. /* 选中后面所有兄弟 ~ */
  17. li.test1~li.test{
  18. background-color: aqua;
  19. }

3. 结构伪类的参数 以及计算过程

3.1 匹配第四个元素

3.2 选择一组所有元素

3.3 匹配第三个后面所有兄弟元素

3.4 匹配最后四个元素

3.5 选择偶数元素

html代码

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7. <style>
  8. @import url(4.27作业3.css);
  9. </style>
  10. <title>演示常用伪类选择器,并写出参数计算过程</title>
  11. </head>
  12. <body>
  13. <ul class="test">
  14. <li>item1</li>
  15. <li>item2</li>
  16. <li>item3</li>
  17. <li>item4</li>
  18. <li>item5</li>
  19. <li>item6</li>
  20. </ul>
  21. </body>
  22. </html>

导入的css代码

  1. /* :nth-of-type(an+b) */
  2. /* 匹配第4个元素 */
  3. /* ul.test>:nth-of-type(4){
  4. background-color: aqua;
  5. } */
  6. /* 计算过程 a=0 n=[0.1.2.3....] b=4 */
  7. /* .test> :nth-of-type(0n + 4) {
  8. background-color: lightgreen;
  9. } */
  10. /* 匹配一组 选择所有元素 a=1 */
  11. /* .test> :nth-of-type(n) {
  12. background-color: lightgreen; */
  13. /* 计算过程 .test> :nth-of-type(1n) {
  14. background-color: lightgreen;
  15. } */
  16. /* n = 0,1,2...
  17. 1*0 =0
  18. 1*1 = 1
  19. 1*2 = 2
  20. 1*3 = 3
  21. [1,2,3,....] */
  22. /* 匹配第3个元素后面的所有兄弟元素 */
  23. /* .test> :nth-of-type(n + 3) {
  24. background-color: lightgreen;
  25. } */
  26. /* 计算过程 a=1 n = 0,1,2,...
  27. 0+3=3
  28. 1+3=4
  29. 2+3=5
  30. ..... */
  31. /* 匹配最后四个元素 */
  32. /* .test>:nth-last-of-type(-n+4){
  33. background-color: aquamarine;
  34. } */
  35. /* 计算过程 a=1 n=[1.2.3.4.....] b=4
  36. -1*1+4=4-1=3
  37. -2*1+4=4-2=2
  38. -3*1+4=4-3=1
  39. -4*1+4=4-4=0 */
  40. /* 选择偶数元素 even */
  41. .test>:nth-of-type(even){
  42. background-color: aquamarine;
  43. }
相关推荐
阅读 +