博客列表 >1. 实例演示权重的原理与计算方式 2. 实例演示结构伪类,通过位置关系匹配子元素

1. 实例演示权重的原理与计算方式 2. 实例演示结构伪类,通过位置关系匹配子元素

手机用户311660634
手机用户311660634原创
2022年10月21日 10:06:11334浏览
  1. 1.权重:
  2. 排列顺序:ID >> CLASS >> TAG
  3. 初始是0.0.0
  4. 计算方式就是看有几个ID,几个class,几个TAG,数字按ID.CLASS.TAG顺序排列,数字越大,权重越高。ID具有唯一性。尽量不要在html中使用ID属性,ID权重过高,会导致选择器失去弹性,不利于调试会复用。
  5. 例:
  6. 1. 下面这组ID=0class=0,tag=1
  7. 所以权重就是 0.0.1
  8. p {
  9. color:red;
  10. }
  11. 2.下面这组ID=0class=1,tag=1
  12. 权重就是 0.1.1
  13. h1.test {
  14. color:green;
  15. }
  16. 如果权重一样,比如第一个权重是0.0.1,第二个也是0.0.1,浏览器会渲染第二个的内容。
  17. 例:
  18. h1 {
  19. color:red;
  20. }
  21. h1 {
  22. color:green;
  23. }
  24. 浏览器中H1内容会是green,因为代码是由上而下执行的。如果想让h1内容变为上面的red,只需要给red增加权重,现在两个H1权重都是0.0.1,只要把red权重增加,比如0.0.2就可以。
  25. 2.伪类
  26. 例:
  27. <ul class="list">
  28. <li class="test1"></li>
  29. <li class="test2"></li>
  30. <li class="test3"></li>
  31. <li class="test4"></li>
  32. <li class="test5"></li>
  33. <li class="test6"></li>
  34. <li class="test7"></li>
  35. <li class="test8"></li>
  36. </ul>
  37. 起始位置: ul.list
  38. 配置第一个:
  39. .list > li.test1{
  40. color:blue;
  41. }
  42. 伪类配置
  43. 如果只是单独配置一个,下行中括号数字改成自己想改成的行数
  44. .list > li:nth-of-type(1){
  45. color:blue;
  46. }
  47. 伪类语法糖:
  48. 匹配第一个:
  49. .list > li:first-of-type{
  50. color:blue;
  51. }
  52. 匹配最后一个:
  53. .list > li:last-of-type{
  54. color:red;
  55. }
  56. :nth-of-type(an + b)
  57. * 1. a: 系数, [0,1,2,3,...]
  58. * 2. n: 参数, [0,1,2,3,...]
  59. * 3. b: 偏移量, 0开始
  60. 规则: 计算出来的索引,必须是有效的(从1开始)
  61. 匹配第一个:
  62. .list > li:nth-of-type(0n + 1) {
  63. colorred;
  64. }
  65. 0xn+1 0乘以任何数都是0,.所以就是0+1=1,想要匹配第几行,就把括号内的1换成那个行数即可。由于0乘以任何数都是0,所以写的时候前面的0n+ 可以去掉不写
  66. 匹配一组:
  67. 全选:1n,全部行都变绿色
  68. .list > li:nth-of-type(1n){
  69. color:green;
  70. }
  71. 1乘以任何数不变,所以1不用写也可以
  72. 从第四个开始匹配:
  73. .list > li:nth-of-type(n + 4){
  74. color:green;
  75. }
  76. 计算方式:
  77. 1 x 0 + 4 = 4
  78. 1 x 1 + 4 = 5
  79. 1 x 2 + 4 = 6
  80. ......
  81. 匹配前四个
  82. 只需要反过来,在N前面加个减号即可
  83. .list > li:nth-of-type(-n + 4){
  84. color:green;
  85. }
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议