欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

CSS:基本选择器、层级选择器、选择器权重优先级

程序员文章站 2022-05-01 22:18:43
...
  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>选择器1:基本选择器</title>
  8. </head>
  9. <body>
  10. <h2>itme1</h2>
  11. <h2 title="hello">itme2</h2>
  12. <h2 id="a">item3</h2>
  13. <h2 id="a">item4</h2>
  14. <h2 class="b">item5</h2>
  15. <h2 class="b">item6</h2>
  16. <style>
  17. /* 基本选择器:根据元素自身特点来选择 */
  18. /* 1.标签选择器 */
  19. h2 {
  20. color: red;
  21. }
  22. /* 2.属性选择器 */
  23. h2[title="hello"] {
  24. color: green;
  25. }
  26. /* 3.id选择器,用于唯一元素,id唯一性由程序员控制,浏览器不检查 */
  27. h2[id="a"] {
  28. color: blue;
  29. }
  30. /* 4.class类选择器 ,用于多个元素*/
  31. h2[class="b"] {
  32. color: violet;
  33. }
  34. /* id ,class是高频属性 */
  35. h2#a,
  36. h2.b {
  37. /* color: orange; */
  38. background-color: yellow;
  39. }
  40. /* 层叠样式表,后面的覆盖前面的 */
  41. /* 通配符,选择下面所有的元素 */
  42. html body * {
  43. background-color: gray;
  44. /* background-color: gray !important; */
  45. /* !important;//提权到100%,优先级别最高 */
  46. }
  47. /* 上下文选择器 */
  48. </style>
  49. </body>
  50. </html>

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>选择器2:层级选择器/上下文选择器</title>
  8. </head>
  9. <body>
  10. <!-- ul.list>li.item*8{itme$} -->
  11. <ul class="list">
  12. <li class="item">itme1</li>
  13. <li class="item second">itme2</li>
  14. <li class="item">
  15. itme3
  16. <!-- ul.inner>li*3{item3_$} -->
  17. <ul class="inner">
  18. <li>item3_1</li>
  19. <li>item3_2</li>
  20. <li>item3_3</li>
  21. </ul>
  22. </li>
  23. <li class="item">itme4</li>
  24. <li class="item">itme5</li>
  25. <li class="item">itme6</li>
  26. <li class="item">itme7</li>
  27. <li class="item">itme8</li>
  28. </ul>
  29. <style>
  30. /* 1.子元素 */
  31. .list>li {
  32. border: 1px solid #000;
  33. }
  34. /* 2.后代,选择所有的后代,不加> 空格即可 */
  35. .list li {
  36. border: 1px solid rgb(248, 26, 26);
  37. }
  38. /* 3.相邻关系,相邻兄弟+ */
  39. .item.second+* {
  40. background-color: gray;
  41. }
  42. /* 4.选择所有兄弟,后面的 */
  43. .item.second~* {
  44. background-color: rgb(223, 26, 26);
  45. }
  46. </style>
  47. </body>
  48. </html>

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>3.选择器的权重/优先级(重点)</title>
  8. </head>
  9. <body>
  10. <h1 class="title" id="active">Hello</h1>
  11. <style>
  12. body h1.title#active {
  13. /* 1 1 2 */
  14. color: red;
  15. }
  16. body h1.title {
  17. /* 0 1 2 */
  18. color: greenyellow;
  19. }
  20. body h1 {
  21. /* 0 0 2 */
  22. /* body加上后,权重变为0 0 2 */
  23. color: darkorange;
  24. }
  25. h1 {
  26. /* 0 0 1 */
  27. color: green;
  28. /* 后面的覆盖前面的 ,如果要前面的生效,则要提权*/
  29. }
  30. /* 规则
  31. 第一位:标签数量 个位
  32. 第二位:class数量 十位
  33. 第三位:id数量 百位
  34. id不推荐使用,因为权重太高了,为了让代码具有弹性,尽量使用class
  35. 为什么不使用最低权重的标签呢,因为标签数量太少了,而class可以任意命名。
  36. */
  37. /* h1 {
  38. color: violet !important;
  39. } */
  40. /* bootsrap ,element ui这些都不能改,因为升级会覆盖 */
  41. </style>
  42. <div class="col-md-3 vip">Bootstrap</div>
  43. <style>
  44. div.col-md-3.vip {
  45. border: 6px solid rgb(241, 14, 60);
  46. }
  47. div.col-md-3 {
  48. border: 1px solid #002;
  49. }
  50. </style>
  51. </body>
  52. </html>

CSS:基本选择器、层级选择器、选择器权重优先级