ASCII码 ASCII码

权重选择器与伪类选择器计算过程

发布于:2022-03-26 09:01:05  栏目:技术文档

1.权重选择器

HTML部分

  1. <h1 class="tilie" id="itme">Are you ok?</h1>

css部分

  1. /* 权重级别
  2. id: 千位
  3. class: 百位
  4. 标签: 个位 */
  5. /* (权重0,0,2) 没有class和id所以千、百位为0,有body和h1,所以标签个位为2 */
  6. body h1{
  7. color: chartreuse;
  8. }
  9. /* (权重:0,1,0) 没有id和标签位,有class,百位为1 */
  10. .tilie{
  11. color: blue;
  12. }
  13. /* 权重:(0,1,2) 没有id,lass百位为1,标签个数有2个,个位为2*/
  14. body h1.tilie {
  15. color: red;
  16. }
  17. /* (权重:1,1,2) id为1,千位有1,有class百位为1,标签个位存在2个,个位为2 */
  18. body h1#itme.tilie{
  19. color: forestgreen;
  20. }
  21. /* !important 最高指示,忽略任何权重,调试代码时使用! */
  22. /* h1{
  23. color: coral !important;
  24. } */
  25. /*
  26. 最终输出结果为权重为(1,1,2)的绿色
  27. */

示例

示例图

2.结构伪类选择器参数计算过程

HTML部分

  1. <ul class="list">
  2. <li>itme1</li>
  3. <li>itme2</li>
  4. <li>itme3</li>
  5. <li>itme4</li>
  6. <li>itme5</li>
  7. <li>itme6</li>
  8. <li>itme7</li>
  9. <li>itme8</li>
  10. </ul>

css部分

  1. /* :nth-of-type(an+b)
  2. 1: a, 系数,[1.2.3...]
  3. 2: n, [0,1,2,3...]
  4. 3: b, 偏移量,从0开始
  5. 计算出来的索引,必须有效,从1开始 */
  6. /* 选择匹配元素只有俩种情况,
  7. 匹配一个元素,和匹配一组元素 */
  8. /*
  9. 1.匹配一个,匹配一个元素的时候a从0开始
  10. 所以a=0, n从从0开始,[0,1,2...],(an==0n==0),所以,{(0n+3)==(3)}
  11. */
  12. /* .list> li:nth-of-type(0n+3){
  13. background-color: aqua;
  14. } */
  15. /* :nth-of-type(0n+3) == :nth-of-type(3) */
  16. .list> li:nth-of-type(3){
  17. background-color: red;
  18. }
  19. /* 2
  20. 匹配一组元素 ,匹配一组元素的时候 a=1,从1开始
  21. n从0开始,这时候(an)就不等于0,(an)就会有值
  22. 后续计算过程为:
  23. 1x0=0
  24. 1x1=1
  25. 1x2=2
  26. 1x3=3
  27. [1,2,3]...
  28. 循环,直到所有元素都匹配完为止,就能选中一组
  29. */
  30. /* .list> li:nth-of-type(1n){
  31. background-color: salmon;
  32. } */
  33. /* 简写 */
  34. .list > *{
  35. background-color: forestgreen;
  36. }

效果展示

示例

相关推荐
阅读 +