Blogger Information
Blog 20
fans 0
comment 0
visits 11681
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
盒模型常用,媒体查询,em,rem的用法和差别
愿情的博客
Original
437 people have browsed it

1,盒模型常用属性

盒模型

  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  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>盒模型</title>
  8. </head>
  9. <body>
  10. <div class="box"></div>
  11. <div class="box"></div>
  12. <style>
  13. .box {
  14. width: 400px;
  15. height: 400px;
  16. background-color: violet;
  17. /* border: 10px solid black; */
  18. /* padding: 20px; */
  19. /* background-clip: content-box; */
  20. box-sizing: border-box;
  21. }
  22. /* 10px+20px+400px=430px+30=460px */
  23. /* 我的本意是想要得到一个400*400的盒子,但是最终计算结果却包括了内边距padding和边框border */
  24. /* 10+20=30 , 400-30=370 */
  25. /* 将左右多出来的padding,border全减去 */
  26. /* .box {
  27. width: 140px;
  28. height: 140px;
  29. background-color: violet;
  30. border: 10px solid black;
  31. padding: 20px;
  32. background-clip: content-box;
  33. } */
  34. .box {
  35. /* 四值:完整语法, 上向下左,顺时针方向 */
  36. padding: 5px 10px 15px 20px;
  37. padding: 5px 20px 15px 20px;
  38. /* 三值语法: 左右相等,而上下不等 */
  39. padding: 5px 20px 15px;
  40. /* 双值语法: 左右相同,上下也相同,但并不是同一个值*/
  41. padding: 15px 20px 15px 20px;
  42. padding: 15px 20px;
  43. /* 三值与双值的记忆方法: 第二个位置的值一定表示的是左右 */
  44. /* 单值: 四个方向全相同 */
  45. padding: 20px;
  46. }
  47. .box {
  48. /* 边框与padding,margin类似,但又有显著的不同, 因为边框是可见的 */
  49. /* border-right-width: 10px;
  50. border-right-style: solid;
  51. border-right-color: blue; */
  52. /* border-right: 10px solid blue;
  53. border-left: 10px solid blue;
  54. border-top: 10px solid blue;
  55. border-bottom: 10px solid blue; */
  56. border: 10px dashed blue;
  57. }
  58. .box {
  59. margin: 20px;
  60. }
  61. .box:last-of-type {
  62. background-color: red;
  63. margin-top: 50px;
  64. /* margin会在垂直方向出现折叠,谁大用谁的 */
  65. }
  66. /* 页面中所有元素,都是一个矩形块 */
  67. /* 矩形块在一个二维平面中,只有"垂直","水平"二种排列方式 */
  68. /* 与这种排列方式对应的,就只有二种元素类型: 块元素, 行内元素 */
  69. /* div: 块元素 */
  70. </style>
  71. <a href="">xxx</a>
  72. <a href="">yyy</a>
  73. <a href="">zzz</a>
  74. <input type="text" />
  75. <input type="text" />
  76. <input type="text" />
  77. <input type="text" />
  78. <!-- 布局前提: 是在一个"宽度受限,而高度无限的空间内" -->
  79. <!-- 布局时,必须将width,height其中一个限制死,否则无法完成布局 -->
  80. <!-- 根据人类的观看习惯, 通常是将宽度限制,而高度随内容舒展 -->
  81. </body>
  82. </html>

2,媒体查询

媒体查询

  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  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>媒体查询</title>
  8. </head>
  9. <body>
  10. <!-- 媒体: 显示/输出信息的介质/载体, 屏幕, 打印机 -->
  11. <!-- 查询: 根据当前媒体宽度的变化来选择不同的页面或显示效果 -->
  12. <button class="btn samll">btn1</button>
  13. <button class="btn middle">btn2</button>
  14. <button class="btn large">btn3</button>
  15. </body>
  16. <style>
  17. /* em: 默认元素字号,16px, */
  18. /* rem: 根元素的字号, 16px */
  19. html {
  20. font-size: 10px;
  21. /* 1rem = 10px; */
  22. }
  23. /* 按钮基本样式 */
  24. .btn {
  25. background-color: seagreen;
  26. color: white;
  27. border: none;
  28. outline: none;
  29. }
  30. .btn:hover {
  31. cursor: pointer;
  32. opacity: 0.8;
  33. transition: 0.3s;
  34. padding: 0.4rem 0.8rem;
  35. }
  36. .btn.small {
  37. /* font-size: 12px; */
  38. font-size: 1.2rem;
  39. }
  40. .btn.middle {
  41. /* font-size: 16px; */
  42. font-size: 1.6rem;
  43. }
  44. .btn.large {
  45. /* font-size: 18px; */
  46. font-size: 1.8rem;
  47. }
  48. /* 最大374px时生效,是不是当小于374px才有效果 */
  49. @media (max-width: 374px) {
  50. html {
  51. font-size: 12px;
  52. }
  53. }
  54. /* 374px - 414px 之间 */
  55. @media (min-width: 375px) and (max-width: 413px) {
  56. html {
  57. font-size: 14px;
  58. }
  59. }
  60. /* >414px 之间 */
  61. @media (min-width: 414px) {
  62. html {
  63. font-size: 16px;
  64. }
  65. }
  66. /* 以上是一个由小到大的匹配过程: 移动优先 */
  67. /* 以上是一个由大到小的匹配过程: PC优先 */
  68. </style>
  69. </html>

3,em,rem的用法和差别

  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  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>常用单位</title>
  8. </head>
  9. <body>
  10. <!-- px: 像素,绝对单位, 1in = 96px -->
  11. <!-- em,rem,vh,vw: 相对单位 -->
  12. <div>
  13. <span>Hello</span>
  14. </div>
  15. <style>
  16. html {
  17. font-size: 10px;
  18. /* 在根元素中设置的字号,在其它地方引用是使用rem,并且这个值是不变的 */
  19. /* 因为一个页面,只有一个根元素, html */
  20. /* 1rem = 10px */
  21. }
  22. div {
  23. /* font-size: 32px; */
  24. /* 1em = 16px */
  25. /* 32px = 2em */
  26. font-size: 3rem;
  27. }
  28. div span {
  29. /* font-size: 2em; */
  30. /* 2em = 2*16=32px */
  31. /* 但是 em在父元素中被重新定义了, 1em = 30px */
  32. /* 2em = 60px */
  33. /* em总是随着自身或父元素的字号发生变化,在布局时会显得非常的混乱 */
  34. /* font-size: 20px; */
  35. font-size: 2rem;
  36. }
  37. </style>
  38. </body>
  39. </html>
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