现代 CSS 你知道多少
现代 CSS (Modern CSS)应该是 2023 年前端圈热门话题之一,在最近的 CSS Day 活动上也有这个话题。另外在社区中也不乏现代 CSS 的讨论以及如何使用现代 CSS 特性来编写和组织 CSS 代码,以及如何使用现代 CSS 技术更好的构建出可扩展,未来更友好的 Web 项目。
CSS 颜色设置透明度的新姿势
在 CSS 中,我们有很多种方式为元素设置透明度,常见的是给元素设置透明度和给颜色设置透明度,不同的方式将会带来不一样的效果。那么今天,我们就一起来聊聊 CSS 中的不透明度。感兴趣的同学,请继续往下阅读。
CSS In 2023
最近 Google I/O 大会开的是热火朝天,我也一直在关注与 Web UI 和 CSS 有关的话题。这不,在 @Una Kravets、@Bramus 和 @Adam Argyle 在 Chrome 开发者博客上就推出一篇关于这方面的文章,即 What's new in CSS and UI: I/O 2023 Edition。在这篇文章中介绍了有关于 Web UI 和 CSS 方面的近 20 个新特性,这 20 个新特性都是最近推出或即将推出的,而且是最令人兴奋和具有影响力的功能。那么,我以我自己的视角来加工一下,感兴趣的同学请继续往下阅读(你也可以点击这里跳转到原文进行阅读)。
防御式 CSS 精讲
如何使自己构建的 UI 或编写的 CSS 代码更具防御性(健壮性),确保还原的 UI 在不同的条件下都能工作,不打破 Web 布局或 Web UI,是每位专业的 Web 前端开发者必备的技能。这本小册从“防御式”角度出发,分析了布局、UI 效果、媒体对象、交互体验等多种场景下编写 CSS 的注意事项,你可以把它当作 CSS 技巧集合或 CSS 魔法集合!
我的第一本小册:现代 Web 布局
已经很久没有看到有一本关于 Web 布局的书了。我在一些平台上搜索了一下,关于 Web 布局方面的书还是停留在多年以前,比如 DIV + CSS 方面的。基于这个原因,几年前我就开始想写一本关于 Web 布局方面的书。有一次有月影姐姐聊了一下我自己的想法,我说想写一本关于 现代 Web 布局方面的小册,后来得到月影姐姐的支持和鼓励,就有了现在这本小册!经过三个多月的全职时间创作,该小册已经接近尾声,现在面向大家!希望大家能喜欢!
创意性的CSS布局和灵活Web
2022年CSS Day于2022年6月9日和10日在阿姆斯特丹举行,这是时隔三年后再次举办的一次有关于CSS主题的盛会(上一届是2019年)。今年的CSS Day一共有14个关于CSS方面的话题,其中有几个话题是非常有意思的,比如 Lea Verou 的 《CSS Variable Secrets》、Bramus Van Damme的《The CSS Cascade, a deep dive》、Adam Argyle的《Oh Snap!》和 Michelle Barker 的《Creative CSS Layout》。就我个人而言,Michelle Barker 的 《Creative CSS Layout》话题我最为感兴趣,该话题围绕着 CSS 的一些新技术给Web布局带来的变化而展开。如果用一句话来描述的话,就是 CSS的新特性可以构建具有创造性的、灵活的Web布局。在接下来的内容中,我们一起来看看这个主题中所阐述的观点和内容,如果你感兴趣的话,请继续往下阅读。
图解CSS:CSS背景(Part3)
前面已经花了两篇的篇幅(《CSS背景:Part1和Part2》)介绍完了除background-size
之外的所有background
子属性的特性以及使用。众所周之,在Web中对于<img>
引入的图片,我们可以显式使用width
、height
、aspect-ratio
或object-fit
等属性来调整图片尺寸,但对于背景图片,我们只能使用background-size
来进行调整。那么background-size
是如何决定背景图片尺寸的计算呢?如果你感兴趣的话,这篇文章可以告诉你很多不为人知的答案。
图解CSS: CSS 背景(Part2)
在第一部分主要和大家一起探讨了 CSS background
属性中的background-image
、background-repeat
、background-attachment
等属性。今天接着和大家一起来探讨其另外三个子属性,即 background-position
、background-clip
和 background-origin
。感兴趣的同学请继续往下阅读!
图解CSS: CSS 背景(Part1)
背景(background
)是 CSS 中最常见也是最基础的一个属性,它自 CSS 1.0 版本就开始有了。最早的时候我们可以通过 background
给一个元素盒子的背景层设置背景颜色(background-color
)、背景图像(background-image
)。如果是背景图像的话,还可以调整背景图像的位置(background-position
)、设置背景图像的平铺方式(background-repeat
)以及背景图像在背景层的依附模式(background-attachment
)。不过,随着 CSS 技术不断向前发展,CSS 为开发者提供了一些新特性用来控制背景图像,比如背景图像的大小(background-size
)、背景图像的剪切(background-clip
)、背景图像的定位区域(background-origin
)以及给同一个元素盒子设置多个背景。除此之外,CSS 还为 background
的一些老属性新增了功能,比如 background-position
可以指定四个值,通过方向设置背景图像的位置,background-repeat
多了几种不同的平铺方式。另外,CSS 还可以使用 background-blend-mode
属性来设置不同的混合模式,从而改变背景图像的效果。