博客列表 >盒模型常用属性+媒体查询

盒模型常用属性+媒体查询

土老帽
土老帽原创
2022年03月25日 13:11:47419浏览

盒模型常用属性

1.盒模型常用属性

属性 定义
width 宽度
height 高度
background-color 背景颜色
border 边框
padding 内边距
background-clip 背景的绘制区域
box-sizing 允许您以特定的方式定义匹配某个区域的特定元素
margin 外边距

2.盒模型写法

  1. .box {
  2. /* 宽度200px */
  3. width: 200px;
  4. /* 高度200px */
  5. height: 200px;
  6. /* 背景颜色 */
  7. background-color: red;
  8. /* 边框 */
  9. border: 10px solid black;
  10. /* 内边距 */
  11. padding: 20px;
  12. /* 背景被裁剪到内容框 */
  13. background-clip: content-box;
  14. }

3.padding写法

  1. .box {
  2. /* 四值:完整语法, 上右下左,顺时针方向 */
  3. /* 上内边距是5px,右内边距是10px,下内边距是15px,左内边距是20px */
  4. padding: 5px 10px 15px 20px;
  5. /* 三值语法: 左右相等,而上下不等 */
  6. padding: 5px 20px 15px;
  7. /* 双值语法: 左右相同,上下也相同,但并不是同一个值*/
  8. padding: 15px 20px 15px 20px;
  9. padding: 15px 20px;
  10. /* 三值与双值的记忆方法: 第二个位置的值一定表示的是左右 */
  11. /* 单值: 四个方向全相同 */
  12. padding: 20px;
  13. }

4.padding,margin类似,但又有显著的不同, 因为padding边框是可见的

  1. .box {
  2. /* 右边框宽度 */
  3. border-right-width: 10px;
  4. /* 右边框样式 实线*/
  5. border-right-style: solid;
  6. /* 右边框颜色 */
  7. border-right-color: blue;
  8. /* 右边框宽度,边框样式,边框颜色简写 */
  9. border-right: 10px solid blue;
  10. /* 左边框宽度,边框样式,边框颜色简写 */
  11. border-left: 10px solid blue;
  12. /* 上边框宽度,边框样式,边框颜色简写 */
  13. border-top: 10px solid blue;
  14. /* 下边框宽度,边框样式,边框颜色简写 */
  15. border-bottom: 10px solid blue;
  16. /* 上下左右边框样式,实线,边框颜色简写 */
  17. border: 10px solid blue;
  18. /* 上下左右边框样式,虚线,边框颜色简写 */
  19. border: 10px dashed blue;
  20. }
  1. .box {
  2. margin: 20px;
  3. }
  4. .box:last-of-type {
  5. background-color: red;
  6. margin-top: 50px;
  7. /* margin会在垂直方向出现折叠,谁大用谁的 */
  8. }

5.总结

1.页面中所有元素,都是一个矩形块
2.矩形块在一个二维平面中,只有”垂直”,”水平”二种排列方式
3.与这种排列方式对应的,就只有二种元素类型: 块元素, 行内元素
4.div:块元素,就算后面有空间,其它元素也必须在第二行显示

6.布局原则

1.布局前提: 是在一个”宽度受限,而高度无限的空间内”
2.布局时,必须将width,height其中一个限制死,否则无法完成布局
3.根据人类的观看习惯, 通常是将宽度限制,而高度随内容舒展

媒体查询

示例:

  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>

rem与rm的区别

示例

  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>
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议