博客列表 >css权重和伪类选择器

css权重和伪类选择器

想做一个躺平的程序员
想做一个躺平的程序员原创
2022年03月31日 23:45:52407浏览

css样式优先级(权重)

我们先来看一张图片

再来看演示的如下
注释很重要

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>写写选择器的权重</title>
  7. </head>
  8. <style>
  9. /* //还有一种是用于调试css样式的 */
  10. /* !important 权重是最大 */
  11. div{
  12. background-color: darkturquoise !important;
  13. }
  14. /* 由于id的权重是最大的,我们写在最上面 */
  15. #name{
  16. background-color: yellow;
  17. }
  18. /* 为防止css样式书写顺序, 我故意写在上面来比较 */
  19. .header{
  20. /* 权重算计:id权重为0,class权重为1,标签权重为0 ,既0,1,0 */
  21. background-color: blue;
  22. }
  23. div{
  24. /* 权重计算: id权重为0 ,class权重为0,标签权重为1,既 0,0,1 */
  25. background-color: brown;
  26. }
  27. </style>
  28. <body>
  29. <!-- 权重是什么,一句话就是css样式的优先级 -->
  30. <!-- 我们来说说权重
  31. id的权重是:百位
  32. class的权重是: 十位
  33. 标签的权重是: 个位 -->
  34. <!-- 为了防止权重过大,一般情况下都不会写id选择器 -->
  35. <div class="header" id="name">
  36. <ul class="list">
  37. <li>item1</li>
  38. <li>item2</li>
  39. <li>item3</li>
  40. <li>item4</li>
  41. <li>item5</li>
  42. </ul>
  43. </div>
  44. </body>
  45. </html>

下面四种图片对应的是div选择器,class选择器,id选择器, !important

第一张div选择器页面效果

第二张class选择器页面效果

第三张id选择器页面效果

第四张!important用于调试css样式页面效果

伪类选择器知识点

直接演示代码 注释很重要

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>css 练习伪类选择器</title>
  7. <style>
  8. /* // first-of-type: 同组兄弟元素中的第一个元素 */
  9. .list> li:first-of-type
  10. {
  11. font-size: 20px;
  12. background-color: salmon;
  13. }
  14. /* :first-child: 一组兄弟元素中的第一个元素 */
  15. .list li:first-child{
  16. background-color: cornflowerblue;
  17. width: 200px;
  18. }
  19. /* ul li:nth-child(an+b) */
  20. /* 我们来说说小括号中的 a n b */
  21. /* n=0,1,2,3,4,5,6,... */
  22. /* b是偏移量, 可以是 0,1,2,3,4,... */
  23. /* a是倍数 可以是0,1,2,3,4,5,.... */
  24. /* a和b都必须是整数,元素的第一个子元素的下标是1 */
  25. /* 注意: an+b不能写成 b+an */
  26. /* :nth-child(an+b) : 找到当前元素的兄弟元素 */
  27. .list li:nth-child(2){
  28. background-color: red;
  29. height:50px;
  30. width: 200px;
  31. }
  32. /* //如果小括号是2n,则表示是偶数行 */
  33. .list li:nth-child(2n)
  34. /* 偶数行也可以用even来表示 */
  35. .list li:nth-child(even)
  36. /* //既然有偶数行,肯定是有奇数行 */
  37. /* //小括号是2n+1 ,则表示是奇数行 */
  38. .list li:nth-child(2n+1)
  39. /* 奇数行也可以用ood来表示 */
  40. .list li:nth-child(odd)
  41. /* // 在兄弟元素中,从后往前推,查找某一个特定的元素 */
  42. .list li:nth-last-child(an+b)
  43. </style>
  44. </head>
  45. <body>
  46. <ul class="list">
  47. <li>item1</li>
  48. <li>item2</li>
  49. <li>item3
  50. <ul class="test">
  51. <li>item1</li>
  52. <li>item2</li>
  53. <li>item3</li>
  54. <li>item4</li>
  55. <li>item5</li>
  56. </ul>
  57. </li>
  58. <li>item4</li>
  59. <li>item5</li>
  60. <li>item6</li>
  61. <li>item7</li>
  62. <li>item8</li>
  63. </ul>
  64. </body>
  65. </html>

代码部分伪类页面效果

first-of-type伪类

nth-child(an+b)伪类

first-child伪类

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议