带你读《2022技术人的百宝黑皮书》——下一代响应式Web设计: 组件驱动式Web设计(23)

简介: 带你读《2022技术人的百宝黑皮书》——下一代响应式Web设计: 组件驱动式Web设计(23)

带你读《2022技术人的百宝黑皮书》——下一代响应式Web设计: 组件驱动式Web设计(22)https://developer.aliyun.com/article/1340873?groupCode=taobaotech


image.png媒体查询 vs. 容器查询

通过上面的示例的介绍,我想你对容器查询特性已经有了一个较清晰的认识了。从使用角度来看,容器查询和媒体查询是非常的相似,那么有人可能会问,有了容器查询是不是就不再需要媒体查询特性了呢?在回答这个问题之前,我们简单的来看两者的差异。

 

众所周知,媒体查询查询的浏览器视窗宽度(当然还有其他查询特性),而容器查询查询的是组件其父容器(具有包含性上下文的祖先元素)的宽度(或样式)。下图可能可以清晰的阐述两者的差异:

image.png

 

 

 

color: #666;
line-height: 1.4;
padding: 0 20px; display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3; overflow: hidden;
}
.card__button { display: inline-flex;
justify-content: center; align-items: center; border: none;
border-radius: 10rem; background-color: #feca53; padding: 10px 20px;
color: #000;
text-decoration: none;
box-shadow: 0 3px 8px rgb(0 0 0 / 7%); transition: all 0.2s linear;
font-weight: 700; justify-self: end; margin: 0 20px 20px 0; cursor: pointer;
}
.card__button:hover { background-color: #ff9800;
}

 

正如上面的效果所示,卡片组件可以随着其容器(.card__container)宽度自动变化,在窄屏下效果看上去还不错,但在宽屏下,效果看上去有点怪怪的。不过不用担心,这仅是最初的效果。我们期望的是通过容器查询的特性,在容器不同断点下改变卡片组件的布局。按照前面所介绍的,我们需要先创建一个包含性上下文,即在 .card__container 上使用 container 显式声明该元素是一个包容性上下文。

.card__container {
container: inline-size;
}

 

 

 

效果如下:

image.png

Untitled @airen CodePen

(地址:https://codepen.io/airen/pen/MWrXNGM

(地址:https://codepen.io/airen

(地址:https://codepen.io/

 

带你读《2022技术人的百宝黑皮书》——下一代响应式Web设计: 组件驱动式Web设计(24)https://developer.aliyun.com/article/1340870?groupCode=taobaotech

相关文章
|
5天前
|
前端开发 JavaScript 开发者
Web技术标准是如何定义网页的?
【6月更文挑战第2天】Web技术标准是如何定义网页的?
22 2
|
5天前
|
JavaScript 前端开发 开发者
Web技术标准
【6月更文挑战第2天】Web技术标准
14 4
|
6天前
|
XML 网络协议 Java
XML Web 服务技术解析:WSDL 与 SOAP 原理、应用案例一览
XML Web服务是基于WSDL、SOAP、RDF和RSS等标准的网络应用程序组件技术。WSDL描述服务接口和消息格式,SOAP用于结构化信息交换,RDF描述网络资源,RSS则用于发布网站更新。Web服务特点是自包含、自描述,基于开放协议,可重用且能连接现有软件。WSDL文档包含`types`、`message`、`portType`和`binding`元素,定义服务操作和协议。SOAP协议规定消息格式,通过HTTP等传输。
455 1
|
6天前
|
前端开发 JavaScript Java
Java语言在Web前端开发中的技术应用
Java语言在Web前端开发中的技术应用
|
9天前
|
SQL 缓存 监控
基于Java的Web应用性能优化技术
基于Java的Web应用性能优化技术
26 3
|
12天前
|
开发框架 前端开发 .NET
web技术
【5月更文挑战第25天】web技术
23 2
|
13天前
|
域名解析 缓存 网络协议
JavaEE精选-Web组件
JavaEE精选-Web组件
20 1
|
16天前
|
前端开发 JavaScript Java
web 技术中前端和后端交互过程
客户端:上网过程中,负责浏览资源的电脑,叫客户端
26 0
|
18天前
|
前端开发 Java Go
从前端到后端:构建现代化Web应用的技术演进
本文探讨了从前端到后端的技术演进,介绍了前端、后端以及多种编程语言,如Java、Python、C、PHP和Go,以及数据库在构建现代化Web应用中的应用。通过深入剖析各个技术领域的发展和应用,读者将对构建高效、可扩展、安全的Web应用有更深入的理解。
|
21天前
|
前端开发 Java Go
从前端到后端:构建现代化Web应用的技术实践
本文将介绍如何通过前端和后端技术相结合,构建现代化Web应用的技术实践。我们将探讨前端开发、后端架构以及多种编程语言(如Java、Python、C、PHP、Go)在构建高效、可扩展的Web应用中的应用。