Blogger Information
Blog 8
fans 0
comment 0
visits 5856
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
媒体查询,大屏适配,定位及flex布局
星辰的博客
Original
802 people have browsed it

一、媒体查询,大屏适配

  • 屏幕尺寸>=980px时:
    1. @media (min-width: 980px) {
    2. html {
    3. font-size: 20px;
    4. }
    5. }
  • 屏幕>=375px,<980px时:
    1. @media only screen and (min-width: 375px) and (max-width: 979px) {
    2. html {
    3. font-size: 16px;
    4. }
    5. }
  • 屏幕小于375px时:
    1. @media (max-width: 374px) {
    2. html {
    3. font-size: 14px;
    4. }
    5. }

二、固定定位:登陆页面

  • 静态定位 position:static (默认)
  • 相对定位 position:relative
    元素仍在文档流中,所占空间不释放,只是相当自身原来的位置进行偏移,使用 top:20px 等进行偏移。
  • 绝对定位 position:absolute
    不再相对自身,而是相对它的包含块,定位包含块不能是static元素,必须是定位元素,如果一直向上找不到可以定位的元素,就当对于body。
    • 相对定位:相对自身,在文档流中;
    • 绝对定位:相对包含块,不在文档流中。
  • 固定定位:position:fixed
    固定定位是绝对定位的子集,包含块是固定的,永远是body。
  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>Document</title>
  8. </head>
  9. <body>
  10. <div class="top">
  11. <div class="logo">php中文网</div>
  12. <button>登陆</button>
  13. </div>
  14. <div class="login">
  15. <div class="bg"></div>
  16. <form action="" class="login-form">
  17. <input type="text" placeholder="请输入用户名" />
  18. <input type="password" placeholder="请输入密码" />
  19. <button type="submit">登陆</button>
  20. </form>
  21. </div>
  22. <style>
  23. * {
  24. padding: 0;
  25. margin: 0;
  26. box-sizing: border-box;
  27. }
  28. .top {
  29. height: 120px;
  30. background-color: blueviolet;
  31. display: flex;
  32. }
  33. .top .logo {
  34. font-size: 24px;
  35. color: white;
  36. padding: 1em 2em;
  37. }
  38. .top button {
  39. margin-left: auto;
  40. width: 5em;
  41. border: none;
  42. height: 3em;
  43. padding: 0.5em 0.5em;
  44. border-radius: 0.5em;
  45. }
  46. .login .login-form {
  47. border: 1px solid red;
  48. position: fixed;
  49. background-color: white;
  50. top: 10em;
  51. left: 20em;
  52. right: 20em;
  53. padding: 2em;
  54. min-width: 13em;
  55. }
  56. .login .login-form :nth-of-type(n) {
  57. display: block;
  58. margin: 1em 0;
  59. }
  60. .login .login-form :last-child {
  61. width: 11em;
  62. height: 2em;
  63. background-color: royalblue;
  64. border: none;
  65. border-radius: 0.5em;
  66. color: white;
  67. }
  68. .login .bg {
  69. position: fixed;
  70. background-color: rgba(0, 0, 0, 0.3);
  71. top: 0;
  72. bottom: 0;
  73. left: 0;
  74. right: 0;
  75. }
  76. </style>
  77. </body>
  78. </html>

三、flex常用属性

  • 声明容器:display: flex;
  • 行方向排列:flex-direction: row;
  • 列方向排列:flex-direction: column;
  • 允许换行:flex-wrap: wrap;

    1. .container {
    2. display: flex;
    3. height: 20em;
    4. border: 1px solid lawngreen;
    5. flex-wrap: wrap;
    6. flex-direction: row; /* 水平排列 */
    7. /* flex-direction: column; 垂直排列 */
    8. flex-flow:row nowap; /* 组合使用:行排列,不换行 */
    9. }
    10. .container > .item {
    11. width: 20em;
    12. padding: 1em;
    13. background-color: lightskyblue;
    14. }

  • 盒子对齐方式:place-content: start(靠左,默认值)end(靠右)center(居中) space-between(两段对齐) space-around(分散对齐) space-evenly(平均对齐)

    1. .container {
    2. place-content: start;
    3. /* 默认值 靠左*/
    4. place-content: end;
    5. /* 靠右 */
    6. place-content: center;
    7. /* 居中 */
    8. place-content: space-between;
    9. /* 两段对齐 */
    10. }


    place-content: start; 默认值 靠左

    place-content: end; 靠右

    place-content: center;居中

    place-content: space-between;两段对齐

    place-content: space-around;分散对齐

    place-content: space-evenly;平均对齐

flex容器上的重点3个属性:

  • 1、flex-flow:主轴方向,换行。
  • 2、place-content:项目在主轴上的排列与空间分配。
  • 3、place-items:项目在交叉轴上的对齐。


place-items: start 上对齐

place-items: end; 下对齐

place-items: center 居中对齐

flex的项目属性

  • flex:放大因子 收缩因子 计算宽度
    flex:0 1 aoto;
    优先级:max-width > 计算宽度 >width
    order:0 进行排序,默认都是0,
    1. .container .item:nth-of-type(2) {
    2. background-color: limegreen;
    3. order: 1;
    4. }
Correcting teacher:PHPzPHPz

Correction status:qualified

Teacher's comments:place-content: space-between;两段对齐 改成两端对齐好一点
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