你也许不再需要使用 CSS Media Queries(媒体查询)了
你也许不再需要使用 CSS Media Queries(媒体查询)了
最近,CSS 引入了一项新功能:Container Queries。它可以替代 Media Queries 并实现 Media Queries 无法胜任的任务。
超越 Media Queries 的功能
让我们想象一个场景:在网页上有两列卡片。我们希望在卡片宽度较窄时,卡片内部呈上下布局;而在卡片宽度较宽时,卡片内部呈左右布局。以 Tailwind CSS 为例,可以这样实现:
<html>
<body class="...">
<main class="container mx-auto flex flex-wrap">
<div class="basis-1/2 p-2 @container/card">
<div class="... flex gap-1 flex-col @sm/card:flex-row">
<img class="... w-full @sm/card:w-32" src="..." alt="">
<p>Lorem ...</p>
</div>
</div>
<div class="basis-1/2 p-2 @container/card">
...
</div>
<div class="basis-1/2 p-2 @container/card">
...
</div>
<div class="basis-1/2 p-2 @container/card">
...
</div>
</main>
</body>
</html>
你可以在 Tailwind CSS Container Queries (https://github.com/tailwindlabs/tailwindcss-container-queries) 上找到更多相关信息。
效果如下:

替代 Media Queries
考虑下一个场景:网页上有一个标题栏,我们希望在窄屏时背景色为深红色,在宽屏时为浅红色。以 Tailwind CSS 为例,可以这样实现:
<html class="@container/root">
<body class="...">
<h1 class="bg-red-500 @md/root:bg-red-300">
Header
</h1>
</body>
</html>
效果如下:

总结
Container Queries 的引入为我们提供了更灵活的布局和样式控制方式,可以减少对传统的 CSS Media Queries 的需求。这一新特性的使用可以极大地简化响应式设计,为开发者带来更多的便利。在不远的将来,Container Queries 将成为前端开发的标配。
你也许不再需要使用 CSS Media Queries(媒体查询)了的更多相关文章
- CSS media queries 媒体查询
最近在做一些页面打印时的特殊处理接触到了media queries,想系统学习一下,在MOZILLA DEVELOPER NETWORK看到一篇文章讲的很不错,结合自己的使用总结一下. CSS2/me ...
- media queries 媒体查询使用
media queries 翻译过来就是媒体查询,media 指的媒体类型.那么有哪些类型呢,常用的有 screen(屏幕).打印(print),个人理解就是它所在的不同终端. 常用的用法:1,< ...
- Media Queries 媒体查询
1.什么是媒体查询 媒体查询可以让我们根据设备显示器的特性(如视口宽度.屏幕比例.设备方向:横向或纵向)为其设定CSS样式,媒体查询由媒体类型和一个或多个检测媒体特性的条件表达式组成.媒体查询中可用于 ...
- css3之Media Queries 媒体查询
一.初步了解 Media Queries是CSS3新增加的一个模块功能,其最大的特点就是通过css3来查询媒体,然后调用对应的样式. 了解Media Queries之前需要了解媒体类型以及媒体特性: ...
- Media Queries媒体查询
Media Queries能在不同的条件下使用不同的样式,使页面在不同在终端设备下达到不同的页面效果.Media Queries有其自己的使用规则.一个媒体查询由一个可选的媒体类型和媒体特性表达式,使 ...
- Media Queries 媒体查询常见设备断点
按需调整断点 一.谷歌后摘抄的一部分媒体查询 /*#region SmartPhones */ /* SmartPhones */@media only screen and (min-device- ...
- 移动设备上的媒体查询 CSS media queries for mobile device
CSS的媒体查询虽然在传统的互联网页面可能发挥的余地不是很大,但是自从苹果和安卓的风靡之后,移动平台上的web开发变得越来越流行了,同时CSS的媒体查询可谓派上了大用场了. 以下为翻译内容,原文来自这 ...
- [CSS3] CSS Media Queries
Using CSS media queries allows you to design responsive layout in your web apps and website. We will ...
- css:Media Queries: How to target desktop, tablet and mobile?
<!doctype html> <html> <head> <meta name="viewport" content="wid ...
- CSS基础教程 -- 媒体查询屏幕适配
响应式布局 Media Query 的使用方法 在上例中, 我们使用Media Queries来根据3种不同尺寸的窗口使用3种不同的样式.通过不同的媒体类型和条件定义样式表规则,媒体查询让CSS可以更 ...
随机推荐
- Unity的IPostGenerateGradleAndroidProject:深入解析与实用案例
Unity IPostGenerateGradleAndroidProject Unity是一款流行的跨平台游戏引擎,它支持多种平台,包括Android.在Unity中,我们可以使用IPostGene ...
- Python 逻辑表达式的妙用
今天偶然看到有这样一段代码,感到很惊讶: super().__init__(package_name or (robot_name + "_moveit_config")) 语义非 ...
- 多光源渲染方案 - Many Lights Sampling
目录 Importance Sampling(IS) Light BVH [2018~2019] 预构建 BVH 重建 BVH 基于 BVH node 的 IS Real-time Stochasti ...
- Pychrm自定义代码块
Pycharm -> Perferences (command + ,)
- Hexo博客Next主题DaoVoice实现在线联系
注册登录DaoVoice 注册地址如下: http://www.daovoice.io/ 在官网注册帐号需要邀请码,可以输入我的邀请码 b69005f1 复制粘贴代码 修改的hexo的文件路劲如下: ...
- Go 语言的 nil 能比较自己吗
nil 是什么? 可以看看官方的描述,在 buildin/buildin.go 里: // nil is a predeclared identifier representing the zero ...
- Mybatis(生命周期 )
生命周期和作用域 生命周期和作用域,是至关重要的,因为错误的使用导致非常严重并发问题 对象声明周期和依赖注入框架 依赖注入框架可以创建线程安全的,基于事务的SqlSession和映射器,并将它们直接注 ...
- GoRedisLock:Golang保障数据一致性的分布式锁解决方案
在现代分布式系统中,多个节点之间共享资源是常见的需求.然而,并发访问共享资源可能导致数据不一致性和竞争条件.为了解决这些问题,我们需要引入分布式锁.GoRedisLock是一个出色的分布式锁库,它结合 ...
- html表格基本标签
1.<table>表签 <table>...</table>标签用于在html文档中后创建表格.它包含表名和表格本身内容的代码. 2.<tr>标签 &l ...
- PHPstudy+Xdebug动态调试代码过程中遇到一分钟就超时问题的解决办法
环境是PhpStorm+Xdebug+WAMP 在实际调试的过程中 碰到了调试还没走完就自动结束的情况 很尴尬 查阅了相关文档资料 找到了解决方法 首先在php.ini中进行修改 我的配置文件地址在 ...