Blogger Information
Blog 35
fans 0
comment 0
visits 16910
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
字体图标与媒体查询
三九三伏
Original
547 people have browsed it

一、CSS布局常用单位

1. 绝对单位

px像素
in英寸

1in等于96px

2.相对单位

2.1 % 相对父级的百分比

2.2 em和rem

1em默认是16px
em受父类影响,rem受根元素也就是HTML的影响。

一般为了保证浏览器正常的阅读,em 小于12px时,将不能生效,除非去浏览器里调整浏览器字体最小显示,调到12px以下,才能生效。不建议调整。

2.3 vw和wh

vw view-width 视图宽度
vh view-height 视图高度
视图窗口,简称视口,view-port
1vw = 整个视口宽度/100
1vh = 整个视口高度/100
参考如下案例:

  1. HTML代码
  2. <!DOCTYPE html>
  3. <html lang="en">
  4. <head>
  5. <meta charset="UTF-8">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  8. <title></title>
  9. <link rel="stylesheet" href="test.css">
  10. </head>
  11. <body>
  12. <div class="box">
  13. </div>
  14. </body>
  15. </html>
  16. CSS文件test.css中的内容
  17. body{
  18. background-color: lightblue;
  19. width: 100vw;
  20. height: 100vh;
  21. }
  22. .box{
  23. width: 50vw;
  24. height: 50vh;
  25. background-color: coral;
  26. background-clip: border-box;
  27. }

效果如下(div始终占视口的50%):

二、表格常用样式

添加表格线,添加到单元格td、th
折叠表格线
调整表头、文字、表格居中
使用伪类选择器设置样式

  1. HTML代码
  2. <!DOCTYPE html>
  3. <html lang="en">
  4. <head>
  5. <meta charset="UTF-8">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  8. <title></title>
  9. <link rel="stylesheet" href="test.css">
  10. </head>
  11. <body>
  12. <table>
  13. <caption>课程表</caption>
  14. <thead>
  15. <tr>
  16. <th></th>
  17. <th>周x</th>
  18. <th>周x</th>
  19. <th>周x</th>
  20. <th>周x</th>
  21. <th>周x</th>
  22. <th>周x</th>
  23. <th>周x</th>
  24. </tr>
  25. </thead>
  26. <tbody>
  27. <tr>
  28. <td rowspan="4">上午</td>
  29. <td>课程</td>
  30. <td>课程</td>
  31. <td>课程</td>
  32. <td>课程</td>
  33. <td>课程</td>
  34. <td>课程</td>
  35. <td>课程</td>
  36. </tr>
  37. <tr>
  38. <td>课程</td>
  39. <td>课程</td>
  40. <td>课程</td>
  41. <td>课程</td>
  42. <td>课程</td>
  43. <td>课程</td>
  44. <td>课程</td>
  45. </tr>
  46. <tr>
  47. <td>课程</td>
  48. <td>课程</td>
  49. <td>课程</td>
  50. <td>课程</td>
  51. <td>课程</td>
  52. <td>课程</td>
  53. <td>课程</td>
  54. </tr>
  55. <tr>
  56. <td>课程</td>
  57. <td>课程</td>
  58. <td>课程</td>
  59. <td>课程</td>
  60. <td>课程</td>
  61. <td>课程</td>
  62. <td>课程</td>
  63. </tr>
  64. </tbody>
  65. <tbody>
  66. <tr>
  67. <td colspan="8">中午</td>
  68. </tr>
  69. </tbody>
  70. <tbody>
  71. <tr>
  72. <td rowspan="2">下午</td>
  73. <td>课程</td>
  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. <td>课程</td>
  89. </tr>
  90. </tbody>
  91. <tfoot>
  92. <tr>
  93. <td>备注</td>
  94. <td colspan="7"></td>
  95. </tr>
  96. </tfoot>
  97. </table>
  98. </body>
  99. </html>
  100. test.css代码
  101. /* 添加单元格表格线,添加到td、th级别。 */
  102. table th,
  103. table td{
  104. border: 1px solid #000;
  105. }
  106. /* 折叠表格线 */
  107. table{
  108. border-collapse: collapse;
  109. /* 表格(块级元素)水平居中 */
  110. margin: auto;
  111. /* 文本水平居中 */
  112. text-align: center;
  113. }
  114. /* 调整标题 */
  115. caption{
  116. /* 调整表标题字体大小 */
  117. font-size: 1.2em;
  118. /* 调整与表主体的距离 */
  119. margin-bottom: 0.6em;
  120. }
  121. table thead{
  122. background-color: lightblue;
  123. }
  124. /* 使用位置类伪类选择器进行样式设置 */
  125. table tbody:not(tbody:nth-of-type(2)) tr:first-of-type td:first-of-type{
  126. background-color: lightgreen;
  127. }

调整后的效果入下:

三、class方式引入字体图标

  1. 基础HTML代码
  2. <!DOCTYPE html>
  3. <html lang="en">
  4. <head>
  5. <meta charset="UTF-8">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  8. <title></title>
  9. <link rel="stylesheet" href="test.css">
  10. </head>
  11. <body>
  12. <div>
  13. <span class="iconfont icon-jingdong myicon"></span>
  14. </div>
  15. </body>
  16. </html>
  17. test.css代码
  18. /* 导入官方库 */
  19. @import 'font_icon/iconfont.css';
  20. /* 设置图标样式 */
  21. .myicon{
  22. /* 可以把文字图标当普通文字一样设置样式 */
  23. font-size: 100px;
  24. color: green;
  25. box-shadow: 2px 2px 2px yellow;
  26. border: 10px solid coral;
  27. }

引用效果如下:

四、媒体查询(PC优先)

媒体:手机/pad/pc等的屏幕,打印机都是媒体
查询:获取媒体当前状态。
布局的前提:用户在一个宽度/高度受限,高度/宽度随用户内容增长的空间进行布局。高度/宽度必须固定一个。

媒体查询PC优先,即先从最大屏开始匹配

  1. HTML代码
  2. <!DOCTYPE html>
  3. <html lang="en">
  4. <head>
  5. <meta charset="UTF-8">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  8. <title></title>
  9. <link rel="stylesheet" href="test.css">
  10. </head>
  11. <body>
  12. <button class="btn small">btn1</button>
  13. <button class="btn middle">btn2</button>
  14. <button class="btn large">btn3</button>
  15. </body>
  16. </html>
  17. test.css代码
  18. 用html根元素伪类设置
  19. :root{
  20. font-size: 16px;
  21. }
  22. .btn{
  23. background-color: seagreen;
  24. color: white;
  25. border: none;
  26. outline: none;
  27. }
  28. .btn:hover{
  29. cursor: pointer;
  30. opacity: 0.1;
  31. transition: 0.3s;
  32. }
  33. .small{
  34. font-size: 1.2rem;
  35. }
  36. .middle{
  37. font-size: 1.6rem;
  38. }
  39. .large{
  40. font-size: 2rem;
  41. }
  42. @media (min-width: 1000px){
  43. :root{
  44. font-size: 256px;
  45. }
  46. }
  47. @media (min-width: 500px) and (max-width:999px){
  48. :root{
  49. font-size: 128px;
  50. }
  51. }
  52. @media (min-width: 250px) and (max-width:499px){
  53. :root{
  54. font-size: 64px;
  55. }
  56. }
  57. @media (min-width: 125px) and (max-width:249px){
  58. :root{
  59. font-size: 32px;
  60. }
  61. }

效果描述:

当屏幕宽度大于1000px时,html的font-size被修改为256px,三个按钮使用了rem的相对单位,对应大小调整为:

  1. small按钮,
  2. font-size=256*1.2=307.2px
  3. middle按钮,
  4. font-size=256*1.6=409.6px
  5. large按钮,
  6. font-size=256*2=512px
Correcting teacher:PHPzPHPz

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post