当前位置: 首页 > news >正文

常见的移动端布局

流式布局(百分比布局)

使用百分比、相对单位(如 em、rem)等来设置元素的宽度,使页面元素根据视口大小的变化进行调整。这种方法可以实现基本的自适应效果,但可能在不同设备上显示不一致。

 
<!DOCTYPE html>
<html>
<head><meta name="viewport" content="width=device-width, initial-scale=1.0"><style>.container {width: 100%;max-width: 1200px;margin: 0 auto;padding: 20px;}.box {width: 100%;height: 200px;background-color: #e0e0e0;margin-bottom: 20px;}@media (min-width: 768px) {.box {width: 50%;}}@media (min-width: 1024px) {.box {width: 33.33%;}}</style>
</head>
<body><div class="container"><div class="box"></div><div class="box"></div><div class="box"></div></div>
</body>
</html>

在这里插入图片描述

flex弹性布局(强烈推荐)

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><link rel="stylesheet" href="style.css"><title>Flexbox Layout Example</title>
</head>
<body><div class="container"><div class="box1">Box 1</div><div class="box2">Box 2</div><div class="box3">Box 3</div></div>
</body>
</html>/* styles.css */
body {margin: 0;font-family: Arial, sans-serif;
}.container {display: flex; /* 使用 Flexbox 布局 */justify-content: space-between; /* 在主轴上均匀分布元素 */align-items: center; /* 在交叉轴上居中对齐元素 */padding: 20px;
}.box1{background-color: aqua;width: 10%;
}
.box2{background-color:brown;flex: 1;
}.box3{background-color: blue;width: 10%;
}

在这里插入图片描述

rem+媒体查询布局

rem基础

rem(root em)是一个相对单位,类似于em,em是父元素字体大小。

不同的是rem的基准是相对于html元素的字体大小。

比如,根元素(html)设置font-size=12px,非根元素设置width:2rem;则换成px表示就是24px。

em相对于父元素的字体大小来说的

rem相对于html元素字体大小来说的

rem的优点就是可以通过修改html里面的文字大小来改变页面中元素的大小可以整体控制。

媒体查询

媒体查询(Media Query)是CSS3新语法。

· 使用@media查询,可以针对不同的媒体类型定义不同的样式

· @media可以针对不同的屏幕尺寸设置不同的样式

· 当重置浏览器大小的过程中,页面也会根据浏览器的宽度和高度重新渲染页面

· 目前针对很多苹果手机、Android手机,平板等设备都用得到多媒体查询

语法规范:

@media mediatype and|not|only (media feature) {
CSS-Code;
}

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>媒体查询案例背景变色</title><style>/* 1.媒体查询一般按照从大到小或者从小到大的顺序来 *//* 2.小于540px 页面的背景颜色变为蓝色 */@media screen and (max-width: 539px) {body {background-color: blue;}}/* 3. 540~970 我们的页面颜色改为绿色 */@media screen and (min-width: 540px) and (max-width:969px) {body {background-color: green;}}/* 4. 大于等于970 我们页面的颜色改为红色 */@media screen and (min-width: 970px) {body {background-color: pink;}}/* 5. screen 还有and必须带上不能省略 *//* 6. 我们的数字后面必须跟单位 970px 这个px不能省略 */</style>
</head>
<body></body>
</html>
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>媒体查询+rem案例</title><style>/* 从小到大顺序 */@media screen and (min-width: 320px) {html {font-size: 50px;}}@media screen and (min-width: 640px) {html {font-size: 100px;}}div {height: 1rem;font-size: .5rem;background-color: green;color: #fff;text-align: center;line-height: 1rem;}</style>
</head>
<body><div>实例</div>
</body>
</html>

响应式布局:bootstrap

引用:
https://blog.csdn.net/xy_is_fhh/article/details/121662703

http://www.lryc.cn/news/140338.html

相关文章:

  • Typore 亲测有效(懂得都懂哈)
  • Kyligence Copilot 登陆海外,斩获 Product Hunt 日榜 TOP 2
  • 【Docker】Docker 的基本概念和优势,基本命令及使用例子
  • 高并发内存池(回收)[4]
  • 分布式事务篇-2.4 Spring-Boot整合Seata
  • 718. 最长重复子数组
  • Mysql join加多条件与where的区别
  • div滚动条自动滚动到底部
  • 【深度学习】实验02 鸢尾花数据集分析
  • AI大模型潮水中,医疗数字化加速「求解」
  • 【安卓】自定义View实现画板涂鸦等功能
  • 面试题. 搜索旋转数组
  • 前端需要理解的数据治理与异常监控知识
  • ip_vs 原理解析 (四)hook 后的开始 一
  • 【论文解读】基于图的自监督学习联合嵌入预测架构
  • C++ 容器
  • 【PHP】PHP文件操作详解
  • 硬核旗舰南卡OE CC开放式耳机发布,重新定义百元开放式耳机新标杆!
  • 785. 判断二分图
  • 限时 180 天,微软为 RHEL 9 和 Ubuntu 22.04 推出 SQL Server 2022 预览评估版
  • 一款ccm的功率因素校正控制器ncp1654
  • 4.若依框架上传文件
  • Property ‘sqlSessionFactory‘ or ‘sqlSessionTemplate‘ are required
  • idea的debug断点的使用
  • 【UE】蓝图通信——事件分发器
  • Python爬虫分布式架构问题汇总
  • AIGC人工智能涉及三十六职业,看看有没有你的职业(一)
  • 万界星空科技/免费MES系统/免费质量检测系统
  • 解决IndexError: index 0 is out of bounds for axis 1 with size 0
  • Java中hashTable的基本介绍,细节讨论,使用注意事项,常用方法和底层的扩容机制