MarginLon MarginLon
首页
  • Web

    • Web基础
    • Web布局
    • CodeSnippet
  • Vue

    • Vue
  • React

    • React
  • Node.js

    • Node.js
  • 技术文档
  • UI组件库
  • 动画库
  • 图形库
  • 桌面端
  • 学习笔记
  • 生活笔记
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

MarginLon

http://info.cern.ch
首页
  • Web

    • Web基础
    • Web布局
    • CodeSnippet
  • Vue

    • Vue
  • React

    • React
  • Node.js

    • Node.js
  • 技术文档
  • UI组件库
  • 动画库
  • 图形库
  • 桌面端
  • 学习笔记
  • 生活笔记
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Web基础

    • CSS技巧收藏
    • 响应式设计
      • container
      • layout
      • image
      • font
    • 常用meta整理
    • CSS滚动条scrollbar
    • CSS超链接标签a
    • CSS裁剪clip-path
    • CSS表格table
    • CSS机制@At-rule
    • CSS清除浮动
    • CSS预处理器
    • CSS选择器
    • CSS布局模型
    • CSS长度
    • CSS颜色
    • 左右分栏宽度拉伸调整
  • Web布局

  • CodeSnippet

  • Vue

  • React

  • 前端
  • Web基础
MarginLon
2022-08-23
目录

响应式设计

<meta name="viewport" content="width=device-width, initial-scale=1.0" />
1

# container

/*  */
.container {
  width: 100%;
}

/* max-width */
.container {
  max-width: 80%;
  margin: 0 auto;
}

/* media query */
.container {
  width: 800px;
}
@media (max-width:900px) {
  .container {
    width: 600px;
  }
}
@media (max-width:700px) {
  .container {
    width: 500px;
  }
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

# layout

/* flex: 宽度过窄会出现异常 */
.container {
  display: flex;
}
/* 屏幕过窄会影响阅读,设置换行*/
.container {
  display: flex;
  flex: wrap;
} 
.container p {
  flex: 250px;
}

/* grid */
.container {
  display: grid;
}
.container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}
/* 屏幕过窄会影响阅读,设置换行*/
.container {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}
/* 或采取grid + media query 手动控制列数*/ 
.container {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

@media (max-width: 900px) {
  .container {
    display: grid;
    grid-template-columns: 1fr 1fr;
  } 
}

@media (max-width: 600px) {
  .container {
    display: grid;
    grid-template-columns: 1fr;
  } 
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45

# image

img {
  max-width:100%;
}
1
2
3
<!-- 1 -->
<img 
  src="../image-300.png" 
  srcset="
    ../image-1240.png 1240w,
    ../image-600.png 600w,
    ../image-300.png 300w,
  "

  size="(max-width: 400px) 300px, (max-width: 900px) 600px, 1240px"
/>
<!-- 2 -->
<picture>
  <source media="(max-width: 400px)" srcset="../image-300.png" />
  <source media="(max-width: 900px)" srcset="../image-600.png" />
  <img src="../image-1240.png" />
</picture>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

# font

/* rem or vw */
h1 {
  font-size: 4rem; 
}

@media (max-width: 900px) {
  h1 {
    font-size: 3rem;
  }
}

@media (max-width: 700px) {
  h1 {
    font-size: 2rem;
  }
}

/* func calc */
h1 {
  font-size:calc(2rem + 2vw);
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
编辑 (opens new window)
上次更新: 2023/09/17, 23:41:49
CSS技巧收藏
常用meta整理

← CSS技巧收藏 常用meta整理→

最近更新
01
KnockoutJS
11-12
02
综述
10-17
03
前言
10-12
更多文章>
Theme by Vdoing | Copyright © 2019-2024 MarginLon | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式