博客列表 >CSS选择器优先级、模块化与伪类选择器的原理及应用

CSS选择器优先级、模块化与伪类选择器的原理及应用

Ghcᝰ
Ghcᝰ原创
2021年03月23日 08:46:47668浏览

CSS选择器优先级、模块化与伪类选择器的原理及应用

css 优先级

  • 行内样式优先级高于内部样式或外部样式
  • ID > CLASS > 元素标签
  • (ID,CLASS,元素) ==> (0,0,0) 当 ID 选择器存在时秒杀一切 CLASS 选择器,CLASS 选择器秒杀一切 标签选择器
  • 想要给选择器提升优先级可以在选择器后面使用!important 提权

css 模块化

  • 为了给代码更加清爽看起来更加舒适,一般不会给每个标签都加上 CLASS 或 ID,只需找到入口来操作其他的元素
  • 代码演示
    CSS选择器
  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. <title>Document</title>
  8. </head>
  9. <style>
  10. /* 给类选择器为class的UL下的最后一个li标签添加背景颜色 */
  11. .ulclass>li:last-of-type {
  12. background-color: aquamarine;
  13. }
  14. /* 给类选择器为class的UL下的第一个li标签添加背景颜色 */
  15. .ulclass>li:first-of-type {
  16. background-color: royalblue;
  17. }
  18. /* 给类选择器为class的UL下的第三个li标签添加背景颜色 */
  19. /* 用空格链接后代元素会把样式带给后代元素 */
  20. .ulclass li:nth-of-type(3) {
  21. background-color: blueviolet;
  22. }
  23. /* 给类选择器为class的UL下的单数li标签添加前景颜色 */
  24. .ulclass>li:nth-of-type(2n+1) {
  25. color: red;
  26. }
  27. /* 给类选择器为class的UL下的双数li标签添加前景颜色 */
  28. .ulclass>li:nth-of-type(2n+2) {
  29. color: blue;
  30. }
  31. /* 给ul下只存在一个li标签的元素加上边框 */
  32. ul>li:only-of-type {
  33. border: solid 2px;
  34. }
  35. </style>
  36. <body>
  37. <ul class="ulclass">
  38. <li>item1</li>
  39. <li>item2</li>
  40. <li>item3
  41. <ul>
  42. <li>孙子1</li>
  43. <li>孙子2</li>
  44. </ul>
  45. </li>
  46. <li>item4</li>
  47. <li>item5</li>
  48. <li>item6</li>
  49. <li>item7</li>
  50. <li>item8</li>
  51. <li>item9</li>
  52. <li>item10</li>
  53. </ul>
  54. <ul>
  55. <li>item1</li>
  56. </ul>
  57. </body>
  58. </html>
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议