博客列表 >css选择器权重、盒子模型、vh/vw和em/rem使用

css选择器权重、盒子模型、vh/vw和em/rem使用

Jet的博客
Jet的博客原创
2023年02月14日 15:35:04322浏览

一、css选择器权重

  1. #table { color:blueviolet }
  2. /* 1,0,0 */
  3. #table h2{ color:aqua; }
  4. /* 1,0,1 */
  1. <table id="table" width="500px" border="1" cellspacing="0" cellpadding="0">
  2. <!--课程表-->
  3. <caption><h2>课程表</h2></caption>
  4. <thead>
  5. <tr>
  6. <th colspan="2">时间</th>
  7. <th>星期一</th>
  8. <th>星期二</th>
  9. <th>星期三</th>
  10. <th>星期四</th>
  11. <th>星期五</th>
  12. </tr>
  13. </thead>
  14. <tbody id="class">
  15. <tr>
  16. <td colspan="2">早读</td>
  17. <td></td>
  18. <td></td>
  19. <td></td>
  20. <td></td>
  21. <td></td>
  22. </tr>
  23. </tbody>
  24. <!--tbody>(tr>td*7)*8-->
  25. <!-- colspan:合并行-->
  26. <!-- rowspan:合并列-->
  27. <tbody id="class">
  28. <tr>
  29. <td rowspan="4">上午</td>
  30. <td>第一节</td>
  31. <td>2</td>
  32. <td>3</td>
  33. <td>4</td>
  34. <td>5</td>
  35. <td>6</td>
  36. </tr>
  37. <tr>
  38. <td>第二节</td>
  39. <td></td>
  40. <td></td>
  41. <td></td>
  42. <td></td>
  43. <td></td>
  44. </tr>
  45. <tr>
  46. <td>第三节</td>
  47. <td></td>
  48. <td></td>
  49. <td></td>
  50. <td></td>
  51. <td></td>
  52. </tr>
  53. <tr>
  54. <td>第四节</td>
  55. <td></td>
  56. <td></td>
  57. <td></td>
  58. <td></td>
  59. <td></td>
  60. </tr>
  61. <tr>
  62. <td colspan="7">午休</td>
  63. </tr>
  64. <tr>
  65. <td rowspan="3">下午</td>
  66. <td>第五节</td>
  67. <td></td>
  68. <td></td>
  69. <td></td>
  70. <td></td>
  71. <td></td>
  72. </tr>
  73. <tr>
  74. <td>第六节</td>
  75. <td></td>
  76. <td></td>
  77. <td></td>
  78. <td></td>
  79. <td></td>
  80. </tr>
  81. <tr>
  82. <td>第七节</td>
  83. <td></td>
  84. <td></td>
  85. <td></td>
  86. <td></td>
  87. <td></td>
  88. </tr>
  89. </tbody>
  90. </table>


小结:

  1. /*
  2. css选择器权重关系:
  3. 1、tag:标签选择器,相当于“个位”
  4. 2、class:类选择器,相当于“十位”
  5. 3、id:ID选择器,相当于“百位”
  6. 0,1,2:ID->0,class->1,tag->2
  7. 百位 > 十位 > 个人
  8. */
  9. /* 最后按数值大的为老大。 */

二、盒子模型

  1. <!--
  2. 5大属性:
  3. width:宽
  4. height:高
  5. border:边距
  6. padding:内边距
  7. margin:外边距
  8. -->
  9. <div class="box">boxxxx</div>
  10. <style>
  11. .box{
  12. width:200px;
  13. height:150px;
  14. border:2px solid burlywood;
  15. }
  16. .box{
  17. padding: 5px 15px;
  18. /*上下 左右*/
  19. /*第二个是左或者左右*/
  20. }
  21. </style>


三、vh/vw使用

  1. <header>header</header>
  2. <main>main</main>
  3. <footer>footer</footer>
  4. <style>
  5. * { margin: 0; padding: 0; box-sizing: border-box; }
  6. body > * {
  7. outline: 1px solid;
  8. background-color: lightblue;
  9. }
  10. header, footer { width: 100vw; height: 10vh; }
  11. main {
  12. background-color: violet;
  13. width: 100vw;
  14. min-height: 100vh;
  15. min-height: calc(100vh - 10vh - 10vh);
  16. /*calc()计算函数:100vh - 具体数值*/
  17. /*保持页面不整页显示,不用拖动*/
  18. }
  19. </style>


小结:

  1. <!--
  2. vw:view width,宽
  3. vh:view height,高
  4. -->

vw vh 都是按浏览器窗口来计算


四、em/rem使用

  1. <style>
  2. html {
  3. font-size: 16px;
  4. }
  5. </style>
  6. <div style="font-size: 1.25rem">
  7. <div style="font-size: 2em">Hello</div>
  8. <div>World</div>
  9. <div style="font-size: 2rem">World!!!</div>
  10. </div>


小结:

  1. /* em:值不固定,会继承父元素的字体大小,是一个相对单位*/
  2. /* rem:相对于html根元素, 根据html根元素调整大小调整*/
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议