新闻中心
如何在CSS中实现Grid侧边栏折叠_Grid template-columns与media query实践
先通过CSS Grid和媒体查询实现响应式侧边栏布局。默认使用grid-template-columns设置侧边栏宽250px,内容区占剩余空间;在屏幕小于768px时,用媒体查询将侧边栏缩至60px或隐藏;结合J*aScript切换类名实现手动折叠,支持平滑过渡;推荐移动优先,先隐藏侧边栏,再依屏幕增大逐步展开,提升小屏体验。

实现一个可折叠侧边栏的布局,使用 CSS Grid 和媒体查询(media query)是一种现代且高效的方式。通过 grid-template-columns 动态调整列宽,并结合 media query 响应不同屏幕尺寸,可以轻松完成侧边栏的展开与收起效果。
基本Grid布局结构
先构建一个简单的页面结构:
侧边栏
使用 CSS Grid 定义两列布局,左侧为侧边栏,右侧为主内容区。
默认状态下,侧边栏宽度设为 250px,内容区占据剩余空间:
.layout {display: grid;
grid-template-columns: 250px 1fr;
height: 100vh;
}
通过Media Query响应屏幕变化
在小屏幕上(如移动端),我们希望侧边栏隐藏或变窄,主内容区占满全屏。利用 media query 可以动态修改 grid-template-columns 的值。
例如,在屏幕宽度小于 768px 时,将侧边栏折叠为 60px 或完全隐藏:
@media (max-width: 768px) {.layout {
grid-template-columns: 60px 1fr;
}
}
如果希望完全隐藏侧边栏,可设为 0px:
@media (max-width: 768px) {.layout {
grid-template-columns: 0 1fr;
}
.sidebar {
display: none;
}
}
添加交互式折叠按钮
若需要用户手动控制侧边栏展开/收起,可通过 J*aScript 切换类名,配合 CSS 自定义属性或变量实现平滑过渡。
来画数字人|直播|
来画数字人自动化|直播|,无需请真人主播,即可实现24小时|直播|,无缝衔接各大|直播|平台。
57
查看详情
定义两个状态:
.layout {display: grid;
grid-template-columns: 250px 1fr;
transition: grid-template-columns 0.3s ease;
}
.layout.collapsed {
grid-template-columns: 60px 1fr;
}
J*aScript 控制切换:
document.querySelector('.toggle-btn').addEventListener('click', function() {document.querySelector('.layout').classList.toggle('collapsed');
});
这样在任意屏幕下都能手动折叠,再结合 media query 可实现更智能的响应逻辑。
适配移动优先的设计建议
采用移动优先策略,先设置小屏样式,再用 min-width 扩展大屏表现:
.layout {display: grid;
grid-template-columns: 0 1fr; /* 移动端默认隐藏 */
overflow: hidden;
}
@media (min-width: 768px) {
.layout {
grid-template-columns: 60px 1fr;
}
.sidebar { display: block; }
}
@media (min-width: 1024px) {
.layout {
grid-template-columns: 250px 1fr;
}
}
这种写法更符合响应式设计趋势,确保小设备体验优先。
基本上就这些。通过灵活运用 grid-template-columns 和 media query,能高效实现侧边栏的折叠与响应式布局,无需复杂框架也能达到良好视觉与交互效果。
以上就是如何在CSS中实现Grid侧边栏折叠_Grid template-columns与media query实践的详细内容,更多请关注其它相关文章!
# 都能
# 日照二手设备网站推广
# 国内seo排名代理机构
# 网站seo外部优化
# 推广页网站免费
# 泰安优化网站工具哪里有
# 东胜网站推广机构
# 四川视频推广营销公司招聘
# 营销短视频推广优势
# seo搜索留痕软件
# 酉阳中航建设招聘网站
# 中文网
# 相关文章
# 各大
# 也能
# css
# 是一种
# 不均匀
# 中不
# 如何在
# 设为
# grid布局
# overflow
# 响应式设计
# 响应式布局
# ai
# ssl
# java
# javascript
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
CSS Flexbox与媒体查询:实现响应式布局中元素的并排与堆叠
sublime如何优雅地处理行尾空格_sublime自动清理多余空白字符配置
UC浏览器官网入口2025最新 UC浏览器网页版正式地址
优化Log4j2控制台输出性能:解决异步日志瓶颈
微信语音通话掉线如何解决 微信语音通话稳定优化方法
126邮箱账号注册 电脑版登录入口
Golang切片为何属于引用类型_Golang slice底层结构与引用语义说明
HTML5原生日期选择器与jQuery UI:实现日期选择器的联动与程序化控制
网易大神怎么保存别人动态的图片_网易大神动态图片保存方法
qq邮箱发邮件给国外发不出去_QQ邮箱国际邮件发送失败原因与解决
J*aScript井字棋(Tic-Tac-Toe)核心交互逻辑实现教程
纯CSS与HTML网格布局的HTML精简策略:SVG与JS方案解析
Win11文件资源管理器卡顿怎么修 Win11重置资源管理器进程优化响应速度【修复方法】
在FastAPI中利用lifespan与依赖注入高效管理Redis连接池
怎么在html里运行vbs脚本_html中运行vbs脚本方法【教程】
163邮箱官方主页登录 直达网易邮箱登录核心页面
2026年CSGO开箱网站推荐 CSGO开箱平台精选
Basecamp怎样用留言钉固定重点_Basecamp用留言钉固定重点【重点标记】
小米14应用无法联网原因分析_小米14网络权限修复
poki网页游戏推荐_poki免费游戏平台入口
QQ邮箱登录平台入口 QQ邮箱网页版邮箱官方入口
QQ邮箱网页版入口 QQ邮箱官方邮箱登录通道
Mac怎么使用表情符号_Mac Emoji快捷键面板
深入理解Go语言中的指针类型:以*string为例
大麦的“候补”是什么意思 大麦候补购票规则【详解】
深入理解字体排版:Adobe光学字偶距与CSS字偶距的差异与实现
Win10文件资源管理器“此电脑”分组怎么关 Win10恢复经典视图【技巧】
实现分段式页面滚动导航:CSS与J*aScript教程
Lar*el如何生成PDF或Excel文件_Lar*el文档导出工具与使用教程
Adobe PDF表单中利用J*aScript解析与格式化日期组件的教程
如何在 Windows 11 中启动游戏手柄设置
Composer如何在生产环境安全地执行composer update
铃兰之剑为这和平的世界希里技能组及加点推荐
Win10如何恢复误删的快捷方式_Win10重建常用软件快捷方式
J*a里如何使用forEach遍历Map_Map遍历方法说明
漫蛙2(台版)官方入口地址 漫蛙2(台版)正版漫画网页端
抓大鹅解压小游戏 抓大鹅摸鱼解压入口
大象笔记网页版入口 印象笔记网页版登录入口
AWS EC2实例间SQL Server连接超时:安全组配置与故障排除指南
微信群消息显示延迟如何解决 微信群消息刷新优化方法
理解J*aScript Promise的微任务队列与执行顺序
抖音网页版企业服务中心登录入口_抖音网页版企业登录平台
《马克思佩恩3》早期版本曝光 UI设计曾多次调整!
J*aScript设计模式实践_j*ascript代码优化
在Qt QML中通过Python字典动态更新TextEdit内容的教程
Python getattr() 异常处理深度解析:避免程序意外退出
Golang如何实现Web接口签名验证_Golang Web接口签名校验开发方法
css子元素高度不一致导致布局错位怎么办_使用align-items:stretch解决高度差异
如何在低配置电脑上搭建轻量级J*a环境_占用更小的环境选择技巧
凉拌黄瓜怎么拌更入味 凉拌黄瓜简单家常做法


2025-11-30
浏览次数:次
返回列表