前端响应式布局
1.什么是响应式布局?
响应式布局是一种使网页在不同设备(如手机、平板和桌面)上均能良好显示的设计理念。
2.响应式布局的原理?
通过灵活的网格布局、CSS 媒体查询和弹性单位等技术,实现内容自适应屏幕尺寸变化。
3.响应式布局的体现?
响应式布局通常使用网格系统来控制页面的结构。可以使用 CSS 的 flexbox 或 CSS Grid 来创建灵活的布局。
3.1. flexbox布局
Flexbox 是一种一维布局模型,适用于单行或单列的布局。代码示例如下:
<div class="container"><div class="item">1</div><div class="item">2</div><div class="item">3</div>
</div>
.container {display: flex; /* 使用 Flexbox 布局 */flex-wrap: wrap; /* 允许换行 */justify-content: space-around; /* 项目均匀分布 */
}.item {flex: 1 1 200px; /* 使每个项目至少 200px 宽,并可以增长 */margin: 10px; /* 每个项目之间的间距 */background-color: #f2f2f2; /* 背景色 */text-align: center; /* 文本居中 */padding: 20px; /* 内边距 */
}
3.2. CSS Grid布局
CSS Grid 是一种二维布局模型,更适合复杂的布局。示例代码如下:
<div class="grid-container"><div class="grid-item">1</div><div class="grid-item">2</div><div class="grid-item">3</div><div class="grid-item">4</div>
</div>
.grid-container {display: grid; /* 使用 Grid 布局 */grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); /* 自动填充列 */gap: 10px; /* 网格间隙 */
}.grid-item {background-color: #f2f2f2; /* 背景色 */text-align: center; /* 文本居中 */padding: 20px; /* 内边距 */
}
3.3. 媒体查询(响应式布局的核心)
媒体查询是响应式设计的核心,允许开发者根据不同的屏幕特性(如宽度、高度、方向等)应用不同的样式。示例代码如下:
@media (max-width: 768px) {.item {flex: 1 1 100%; /* 小于 768px 时,每个项目占满整行 */}
}@media (max-width: 480px) {.item {font-size: 14px; /* 小于 480px 时,字体变小 */}
}
3.4. 弹性单位
使用相对单位(如 %、em、rem、vh、vw 等)可以使布局更灵活。
- 百分比 (%):根据父元素的宽度或高度计算。
em和rem:相对于字体大小,em是相对于父元素的字体大小,rem是相对于根元素(通常是<html>)的字体大小。vh和vw:相对于视口的高度和宽度,1vh是视口高度的 1%,1vw是视口宽度的 1%。
代码示例如下:
.container {width: 80%; /* 容器宽度为视口宽度的 80% */padding: 2rem; /* 内边距为根元素字体大小的 2 倍 */
}.item {height: 20vh; /* 项目高度为视口高度的 20% */
}
3.5. 响应式图片和媒体
为了确保图片和视频等媒体在不同屏幕尺寸上适应,可以使用 CSS 的 max-width 属性。代码示例如下:
img {max-width: 100%; /* 图片最大宽度为其父元素的 100% */height: auto; /* 高度自动调整 */
}
除此以外还可以使用img标签的srcset属性。它允许为<img>标签指定多个源图像,并根据设备屏幕的大小和分辨率来选择最合适的图像。代码示例如下:
<img src="small.jpg"srcset="small.jpg 500w, medium.jpg 1000w, large.jpg 1500w"sizes="(max-width: 600px) 500px, (max-width: 900px) 1000px, 1500px"alt="示例图像"
>
一般情况下,scset和sizes属性一起使用,因为sizes可以帮助浏览器更准确地知道在不同视图下应该显示多大的图像,这样浏览器在选择图像时就更加精准了。
srcset:列出了三个图像源和它们各自的宽度描述符。500w、1000w和1500w告诉浏览器每个图像的自然宽度。
sizes:
- 当视口宽度最大为600px时,图像的显示大小应为500px宽。
- 当视口宽度最大为900px时,图像的显示大小应为1000px宽。
- 如果视口宽度超过900px时,图像的显示大小应为1500px宽。
相关文章:
前端响应式布局
1.什么是响应式布局? 响应式布局是一种使网页在不同设备(如手机、平板和桌面)上均能良好显示的设计理念。 2.响应式布局的原理? 通过灵活的网格布局、CSS 媒体查询和弹性单位等技术,实现内容自适应屏幕尺寸变化。 3.响…...
力扣MySQL 1581
先把两张表连接,amount为null 的正是我们需要的,再按customer_id聚合 select Visits.visit_id,customer_id ,Transactions.visit_id ,transaction_id ,amount from Visits left join Transactions on Visits.visit_idTransactions.visit_id 正确代码&…...
就是这个样的粗爆,手搓一个计算器:科学计算器
作为程序员,没有合适的工具,就得手搓一个,PC端,移动端均可适用。废话不多说,直接上代码。 HTML: <div class"calculator"><div class"display-wrapper"><div class"display…...
wordpress使用popup弹窗插件的对比
您在寻找最好的 WordPress 弹出插件吗?大多数网站利用某种形状或形式的弹出窗口来将访问者指向他们希望他们去的地方。例如,这可能用于结帐、电子邮件订阅或用于生成潜在客户。 表现 弹出插件会减慢您的网站速度。当插件使用 WordPress 跟踪弹出窗口的…...
开源OpenStack
1.查询HCS基于OpenStack哪个版本开发 2.九大核心组件 OpenStack可以对接FC也可以对接KVM主机;(OpenStack 对接华为FusionCompute,一个集群对应 openstack 一台计算主机)-引申出nova compute 2.1nova nova两个核心组件nova contro…...
基于Spring Boot+vue技术的导游系统设计与实现
论文下载【免费】基于SpringBootvue技术的导游系统设计与实现资源-CSDN文库 摘 要 本研究背景主要聚焦于当前旅游业信息化、智能化的发展趋势。随着移动互联网的普及和人们出行方式的多样化,导游系统作为旅游服务的重要组成部分,亟需进行技术革新以提…...
软件测试 —— 灰度测试及测试流程!
软件测试中的灰度测试是一种结合了黑盒测试和白盒测试特点的测试方法,旨在通过逐步扩大测试范围来评估新系统或新功能在真实环境中的性能和稳定性。灰度测试是软件开发过程中的一个重要环节,它有助于在全面发布前发现并修复潜在问题,同时收集…...
中科星图GVE(案例)——AI实现光伏面板提取
目录 简介 函数 gve.Services.AI.solarExtraction(image) 代码 结果 知识星球 机器学习 简介 光伏面板提取是一种将光伏面板从图像或视频中准确地分割出来的任务,可以通过使用深度学习算法来实现。 以下是一种基于深度学习的光伏面板提取的实现步骤&#x…...
一种压缩QRCode矩阵以用于存储的方法
通常QRCode由服务器生成,以图片格式发送到客户端,由客户端直接展示,也可以由客户端使用javascript或其他内置的SDK直接生成。 0、需求 QRCode生成过程中往往是先生成矩阵,然后使用矩阵生成图片,矩阵就是由01组成的一…...
鸿蒙HarmonyOS开发:系统服务
拨打电话 call.makeCall 跳转到拨号界面,并显示待拨出的号码。使用callback异步回调。 makeCall(phoneNumber: string, callback: AsyncCallback<void>): voidimport { call } from kit.TelephonyKit;import { BusinessError } from kit.BasicServicesKit;c…...
【Go】GO语言知识总结浅析
Go语言是一种现代化的编程语言,由Google于2007年设计并于2009年发布。它旨在使编程变得简单、高效,并且可以在多核处理器上轻松构建高性能应用。Go语言的编程思想、发展历史、版本特点、运行原理、数据类型、应用场景,以及在web开发、网络编程…...
GWO-Transformer-LSTM灰狼算法优化深度学习多变量回归预测(Maltab)
GWO-Transformer-LSTM灰狼算法优化深度学习多变量回归预测(Maltab) 目录 GWO-Transformer-LSTM灰狼算法优化深度学习多变量回归预测(Maltab)效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现灰狼算法OOA-Transf…...
上市公司企业供应链抵抗力数据集(2012-2023年)
一、测算方式:参考《财经研究》张树山(2024)老师的做法,供应链抵抗力(Resis)体现了供应链运行状态的稳定性,即在应对外部扰动时,供应链仍能维持循环畅通。本文从稳固供应链关系来筛选…...
javaWeb项目-ssm+jsp-XX牙科诊所管理系统功能介绍
本项目源码(点击下方链接下载):java-ssmjsp私人牙科诊所管理系统实现源码(项目源码-说明文档)资源-CSDN文库 项目关键技术 开发工具:IDEA 、Eclipse 编程语言: Java 数据库: MySQL5.7 框架:ssm、Springboot 前端&…...
tcp_rmem中有三个值4896 131072 6291456是什么意思,有什么作用?
在 TCP 中,tcp_rmem参数的三个值分别具有以下含义和作用: 一、含义 “4896”: 通常代表 TCP 接收缓冲区的最小大小。这是接收端为接收数据预先分配的最小内存空间。当网络中数据量较小时,这个最小缓冲区可以确保有足够的空间来存储…...
转行AI产品经理:高薪诱惑,年薪90万不是梦!
近期有很多社招的小伙伴都在看转行的机会,同时马上要到了秋招的季节,校招生们都在积极选择第一份工作。所有人想要进入一个有前景、高薪高潜力的黄金赛道。 2024年如果大家看新机会,重点给大家推荐AI领域的岗位。先看一组数据: …...
javaWeb项目-ssm+jsp股票交易管理系统功能介绍
本项目源码(点击下方链接下载):java-ssmjsp股票交易管理系统实现源码(项目源码-说明文档)资源-CSDN文库 项目关键技术 开发工具:IDEA 、Eclipse 编程语言: Java 数据库: MySQL5.7 框架:ssm、Springboot 前端ÿ…...
CentOS上安装SSL证书教程
在 CentOS 上,apt-get 是不可用的,因为 CentOS 使用的是 yum 或 dnf 包管理器。你可以通过 yum 或 dnf 安装 certbot 和 python3-certbot-nginx。以下是详细的步骤: 1. 启用 EPEL(Extra Packages for Enterprise Linux࿰…...
单目相机和双目相机定位
1、单目相机 1.1模型 单目相机成像模型为小孔成像,涉及的坐标系包括世界坐标系、相机坐标系、图像坐标系以及像素坐标系。坐标系之间的转换关系如下: 1.2参数求解 张正友相机标定方法、设定世界坐标系精确求解 2、双目相机 2.1、模型 一般双目立体视…...
【Cadence27】HDL拷贝工程➕Allegro导出DXF和3D文件STP
【转载】Cadence Design Entry HDL 使用教程 【Cadence01】Cadence PCB Edit相对延迟与绝对延迟的显示问题 【Cadence02】Allegro引脚焊盘Pin设置为透明 【Cadence03】cadence不小心删掉钢网层怎么办? 【Cadence04】一般情况下Allegro PCB设计时的约束规则设置&a…...
深入剖析AI大模型:大模型时代的 Prompt 工程全解析
今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...
模型参数、模型存储精度、参数与显存
模型参数量衡量单位 M:百万(Million) B:十亿(Billion) 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的,但是一个参数所表示多少字节不一定,需要看这个参数以什么…...
智能在线客服平台:数字化时代企业连接用户的 AI 中枢
随着互联网技术的飞速发展,消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁,不仅优化了客户体验,还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用,并…...
Psychopy音频的使用
Psychopy音频的使用 本文主要解决以下问题: 指定音频引擎与设备;播放音频文件 本文所使用的环境: Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...
Python如何给视频添加音频和字幕
在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...
根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:
根据万维钢精英日课6的内容,使用AI(2025)可以参考以下方法: 四个洞见 模型已经比人聪明:以ChatGPT o3为代表的AI非常强大,能运用高级理论解释道理、引用最新学术论文,生成对顶尖科学家都有用的…...
mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包
文章目录 现象:mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时,可能是因为以下几个原因:1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...
html css js网页制作成品——HTML+CSS榴莲商城网页设计(4页)附源码
目录 一、👨🎓网站题目 二、✍️网站描述 三、📚网站介绍 四、🌐网站效果 五、🪓 代码实现 🧱HTML 六、🥇 如何让学习不再盲目 七、🎁更多干货 一、👨…...
【Go语言基础【13】】函数、闭包、方法
文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数(函数作为参数、返回值) 三、匿名函数与闭包1. 匿名函数(Lambda函…...
