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

css样式来源、基本选择器、上下文选择器、选择器的权重

程序员文章站 2022-03-24 09:07:10
...

样式来源

主页面

  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. <!-- 外部样式 -->
  8. <link rel="stylesheet" href="css/style.css" />
  9. <title>Document</title>
  10. </head>
  11. <body>
  12. <!-- 浏览器默认样式 -->
  13. <h1>样式来源1</h1>
  14. <!-- 内联样式 -->
  15. <h1 style="color: red">样式来源2</h1>
  16. <h2>样式来源3</h2>
  17. <h3>样式来源4</h3>
  18. <!-- 文档样式 -->
  19. <style>
  20. h2 {
  21. /* 写在后面的会覆盖前面的 */
  22. color: royalblue;
  23. color: salmon;
  24. }
  25. </style>
  26. </body>
  27. </html>

style.css文件

  1. h3 {
  2. color: blueviolet;
  3. }

样式来源优先级

内联样式>文档样式>外部样式

图示:
css样式来源、基本选择器、上下文选择器、选择器的权重


基本选择器

  1. <table border="1" width="400" height="100" align="center">
  2. <caption>
  3. 产品列表
  4. </caption>
  5. <thead>
  6. <tr>
  7. <th>名称</th>
  8. <th>价格</th>
  9. <th>数量</th>
  10. <th price="sum">总金额</th>
  11. </tr>
  12. </thead>
  13. <tboday>
  14. <tr>
  15. <td id="zhuji">主机</td>
  16. <td>5000</td>
  17. <td>1</td>
  18. <td>5000</td>
  19. </tr>
  20. <tr>
  21. <td class="s">鼠标</td>
  22. <td class="s">200</td>
  23. <td class="s">1</td>
  24. <td class="s">200</td>
  25. </tr>
  26. <tr>
  27. <td>键盘</td>
  28. <td>300</td>
  29. <td>1</td>
  30. <td>300</td>
  31. </tr>
  32. <tr>
  33. <td>显示器</td>
  34. <td>2000</td>
  35. <td>1</td>
  36. <td>2000</td>
  37. </tr>
  38. </tboday>
  39. <tfoot>
  40. <tr>
  41. <td colspan="4">电脑总价:7500</td>
  42. <!-- <td>x</td>
  43. <td>x</td>
  44. <td>x</td> -->
  45. </tr>
  46. </tfoot>
  47. </table>
  48. <style>
  49. /* 标签选择器 */
  50. table {
  51. text-align: center;
  52. }
  53. caption {
  54. font-weight: bold;
  55. color: red;
  56. font-size: larger;
  57. }
  58. th {
  59. background-color: skyblue;
  60. }
  61. /* 属性选择器 */
  62. th[price="sum"] {
  63. color: red;
  64. }
  65. /* id选择器 */
  66. td#zhuji {
  67. color: saddlebrown;
  68. font-size: larger;
  69. font-weight: bold;
  70. }
  71. /* 类 选择器 */
  72. td.s {
  73. background-color: salmon;
  74. }
  75. tr>
  76. </style>

图示:
css样式来源、基本选择器、上下文选择器、选择器的权重


上下文选择器

  1. <ol class="list">
  2. <li class="item">item1</li>
  3. <li class="item second">item2</li>
  4. <ul class="ulist">
  5. <li class="uitem">uitem1</li>
  6. <li class="uitem second">uitem2</li>
  7. <li class="uitem">uitem3</li>
  8. <li class="uitem">uitem4</li>
  9. </ul>
  10. <li class="item">item3</li>
  11. <li class="item fourth">item4</li>
  12. <li class="item">item5</li>
  13. <li class="item">item6</li>
  14. </ol>
  15. <style>
  16. /* 子元素 > */
  17. .list > li {
  18. background-color: bisque;
  19. }
  20. /* 后代元素 空格 */
  21. .list li {
  22. border: 1px solid;
  23. }
  24. /* 相邻后面的兄弟 + * */
  25. .item.fourth + * {
  26. font-size: larger;
  27. }
  28. /* 后面所有的兄弟 ~ * */
  29. .item.fourth ~ * {
  30. color: red;
  31. }
  32. </style>

图示:
css样式来源、基本选择器、上下文选择器、选择器的权重


选择器的权重

  1. <div class="test">
  2. <p class="te" id="xz">选择器的权重</p>
  3. </div>
  4. <style>
  5. /* 就想放在前面,又想让它生效,只有提权 */
  6. p.te#xz {
  7. color: yellowgreen;
  8. }
  9. .te#xz {
  10. color: violet;
  11. }
  12. #xz {
  13. color: saddlebrown;
  14. }
  15. p.te {
  16. color: steelblue;
  17. }
  18. .te {
  19. color: red;
  20. }
  21. p {
  22. color: rosybrown;
  23. font-weight: bold;
  24. }
  25. /* 0,0,0
  26. css 将 id, class, tag 看成一个"三位整数", id -> 百位, class -> 十位, tag -> 个位
  27. 三个权重的位置, 从左到右
  28. 第1位: id数量
  29. 第2位: class数量
  30. 第3位: 标签数量
  31. */
  32. </style>