单标签实现复杂的棋盘布局

2022-09-20
阅读 8 分钟
7.1k
其实,对于一个页面的布局而言,标签越少不一定是好事,我们在考虑 DOM 的消耗的同时,也需要关注代码的可读性,以及后续基于这个布局的制作的交互的难易性等等。
封面图

新时代布局新特性 -- 容器查询

2022-09-14
阅读 3 分钟
5.5k
而目前,我们也能在 Chrome Canary 版本中,或者在 Chrome 93~104 通过开启 Enable CSS Container Queries 特性抢先体验。
封面图

高阶 CSS 技巧在复杂动效中的应用

2022-09-09
阅读 11 分钟
2.9k
最近我在 CodePen 上看到了这样一个有意思的动画:整个动画效果是在一个标签内,借助了 SVG PATH 实现。其核心在于对渐变(Gradient)的究极利用。完整的代码你可以看看这里 -- CodePen DEMO -- to the future 🍻 By Jane Ori]源代码还是非常非常复杂的,并且叠加了复杂的 SVG PATH 路径。我尝试着将其稍微拆分成几小块,...
封面图

有意思的水平横向溢出滚动

2022-09-07
阅读 4 分钟
6.2k
最近接到一个很有意思的需求,能否做到当内容横向溢出时,依然能够使用鼠标滚轮对内容进行滚动的方法。什么意思呢?来看看这么一种情况:我们有一个垂直方向溢出滚动的容器,以及一个水平方向溢出滚动的容器:如果使用的是非触控板(大部分用户没有触控板),而是使用鼠标来进行操作,会发现,这两个容器中,只有垂直方...
封面图

巧用 transition 实现短视频 APP 点赞动画

2022-08-30
阅读 7 分钟
6.9k
那么,这么有趣的点赞动画,有没有可能使用纯 CSS 实现呢?那当然是必须的,本文,就将巧妙的借助 transition,仅仅使用 CSS 完成这么一个点赞动画。
封面图

有意思的方向裁切 overflow: clip

2022-08-26
阅读 2 分钟
2.2k
本文将介绍一个新特性,从 Chrome 90 开始,overflow 新增的一个新特性 -- overflow: clip,使用它,轻松的对溢出方向进行控制。
封面图

妙啊!纯 CSS 实现拼图游戏

2022-08-23
阅读 6 分钟
7.1k
本文,将向大家介绍一种将多个 CSS 技巧运用到极致的技巧,利用纯 CSS 实现拼图游戏。本技巧源自于 Temani Afif 的 CodePen CSS Only Puzzle game。一款完全由 CSS 实现的拼图游戏。我们要做的,就是将散落的图片碎块,复原成一幅完整的图,像是这样:注意,这是完全由 CSS 实现的,我们拆解一下核心的难点:如何让一个...
封面图

多行文本下的文字渐隐消失术

2022-08-16
阅读 6 分钟
7k
本文将探讨一下,在多行文本情形下的一些有意思的文字动效。多行文本,相对于单行文本,场景会复杂一些,但是在实际业务中,多行文本也是非常之多的,但是其效果处理比起单行文本会更困难。单行与多行文本的渐隐首先,我们来看这样一个例子,我们要实现这样一个单行文本的渐隐:使用 mask,可以轻松实现这样的效果,只需...
封面图

实现一个会动的鸿蒙 LOGO

2022-08-12
阅读 6 分钟
3k
本文将带大家简单实现一个会动的鸿蒙 LOGO。emmm,写本文的动机是之前在掘金看到一篇实现鸿蒙 LOGO 的文章 -- 产品经理:鸿蒙那个开场动画挺帅的 给咱们页面也整一个呗鸿蒙的 LOGO 本身是这样的:该篇作者最终实现的是一个字母 O 的动画展开过程:而本文想尝试的,是该 LOGO 的其他一些细节,核心是倒影部分的水波效果。...
封面图

使用 CSS 构建强大且酷炫的粒子动画

2022-08-08
阅读 7 分钟
8.1k
当然,不使用 HTML + CSS 的主要原因在于,粒子动画通常需要较多的粒子,而如果使用 HTML + CSS 的话势必需要过多的 DOM 元素,这也就导致了使用 HTML + CSS 构建的粒子动画在性能上毫无优势。
封面图

妙用 CSS 构建花式透视背景效果

2022-08-04
阅读 3 分钟
6.4k
本文将介绍一种巧用 background 配合 backdrop- filter 来构建有趣的透视背景效果的方式。本技巧源自于一名群友的提问,如何构建如 ElementUI 文档的一种顶栏背景特效,看看效果:仔细看,在页面的的滚动过程中,顶栏的背景不是白色的,也不是毛玻璃效果,而是能够将背景颗粒化:准确而言,是一种基于颗粒化的毛玻璃效果...
封面图

前端构建效率优化之路

2022-08-02
阅读 16 分钟
7.7k
我们的系统(一个 ToB 的 Web 单页应用)前端单页应用经过多年的迭代,目前已经累积有大几十万行的业务代码,30+ 路由模块,整体的代码量和复杂度还是比较高的。
封面图

圆角大杀器,使用滤镜构建圆角及波浪效果

2022-07-25
阅读 9 分钟
7.5k
本文,将另辟蹊径,介绍一种使用滤镜去构建圆角的独特方式。首先,我们来看这样一个图形:一个矩形,没什么特别的,代码如下: {代码...} 如果,我们现在需要给这个矩形的两端加上圆角,像是这样,该怎么做呢:So easy,不过就是加个 border-radius 而已: {代码...} 好,那如果,不再是直线,而是一条曲线,希望曲线两...
封面图

超酷炫的转场动画?CSS 轻松拿下!

2022-07-18
阅读 9 分钟
5.4k
在 WeGame 的 PC 端官网首页,有着非常多制作精良的基于滚动的动画效果。这里我简单截取其中 2 个比较有意思的转场动画,大家感受感受。转场动画 1:转场动画 2:是不是挺有意思的,整个动画的衔接是基于滚轮的滚动触发的。我猜测是使用了类似 TweenMaxJS 的动画库实现。当然,这两处酷炫有意思的转场动画,基于最新的 C...
封面图

利用噪声构建美妙的 CSS 图形

2022-07-13
阅读 10 分钟
7.8k
在平时,我非常喜欢利用 CSS 去构建一些有意思的图形。我们首先来看一个简单的例子。首先,假设我们实现一个 10x10 的格子:此时,我们可以利用一些随机效果,优化这个图案。譬如,我们给它随机添加不同的颜色:虽然利用了随机,随机填充了每一个格子的颜色,看着有那么点意思,但是这只是一幅杂乱无章的图形,并没有什...
封面图

高阶切图技巧!基于单张图片的任意颜色转换

2022-07-11
阅读 5 分钟
8k
今天,要介绍一种基于 CSS mask-composite 的高级技巧。通过掌握它,我们可以通过一张 图片,得到关于它的各种变换,甚至乎,得到各种不同颜色的变换。通过单张 PNG/SVG 得到它的反向切图事情的经过是这样的,某天,我们拿到了这样一张 PNG/SVG 图片:就这张图片而言,它是一张 PNG 图,灰色部分透明。随着需求的进行,...
封面图

使用纯 CSS 实现超酷炫的粘性气泡效果

2022-07-05
阅读 6 分钟
8.1k
最近,在 CodePen 上看到这样一个非常有意思的效果:这个效果的核心难点在于气泡的一种特殊融合效果。其源代码在:CodePen Demo -- Goey footer,作者主要使用的是 SVG 滤镜完成的该效果,感兴趣的可以戳源码看看。其中,要想灵活运用 SVG 中的 feGaussianBlur 滤镜还是需要有非常强大的 SVG 知识储备的。那么,仅仅使用...
封面图

超 Nice 的表格响应式布局小技巧

2022-06-29
阅读 4 分钟
1.9k
今天,遇到了一个很有意思的问题,一名群友问我,仅仅使用 CSS,能否实现这样一种响应式的布局效果:简单解析一下效果:在屏幕视口较为宽时,表现为一个整体 Table 的样式而当屏幕视口宽度较小时,原 Table 的每一行数据单独拆分为一个 Table 进行展示很有意思的一个响应式布局,让信息在小屏幕下得到了一种不错的展示。...
封面图

有意思的鼠标指针交互探究

2022-06-21
阅读 4 分钟
6.2k
今天,来实现这样一个有意思的交互效果:将原本的鼠标指针样式,修改成自己想要的效果,并且添加上一些特殊的交互效果。修改鼠标样式首先,第一个问题,我们可以看到,上图中,鼠标指针的样式被修改成了一个圆点:正常而言应该是这样:当然,这里比较简单,在 CSS 中,我们可以通过 cursor 样式,对鼠标指针形状进行修改...
封面图

使用 content-visibility 优化渲染性能

2022-06-14
阅读 8 分钟
6.4k
content-visibility:属性控制一个元素是否渲染其内容,它允许用户代理(浏览器)潜在地省略大量布局和渲染工作,直到需要它为止。
封面图

文字轮播与图片轮播?CSS 不在话下

2022-06-07
阅读 6 分钟
7.5k
今天,分享一个实际业务中能够用得上的动画技巧。巧用逐帧动画,配合补间动画实现一个无限循环的轮播效果,像是这样:看到上述示意图,有同学不禁会发问,这不是个非常简单的位移动画么?我们来简单分析分析,从表面上看,确实好像只有元素的 transform: translate() 在位移,但是注意,这里有两个难点:这是个无限轮播...
封面图

妙啊!动画还可以这样控制?

2022-05-24
阅读 3 分钟
6.2k
今天,有在群里看到这样一个问题:有一个动画,一开始静止处于第一帧,只在用户 hover 的时候运行动画,在运行一次后停止,并且停留在最后一帧,使用 CSS 可以完成么?
封面图

浅谈逻辑选择器 -- 父选择器它来了!

2022-05-18
阅读 10 分钟
8k
在 CSS 选择器家族中,新增这样一类比较新的选择器 -- 逻辑选择器,目前共有 4 名成员::is:where:not:has本文将带领大家了解、深入它们。做到学以致用,写出更现代化的选择器。:is 伪类选择器:is() CSS伪类函数将选择器列表作为参数,并选择该列表中任意一个选择器可以选择的元素。在之前,对于多个不同父容器的同个子...
封面图

现代 CSS 解决方案:CSS 数学函数

2022-05-11
阅读 11 分钟
7.4k
在 CSS 中,其实存在各种各样的函数。具体分为:Transform functionsMath functionsFilter functionsColor functionsImage functionsCounter functionsFont functionsShape functionsReference functionsCSS grid functions本文,将具体介绍其中的 CSS 数学函数(Math functions)中,已经被浏览器大规模支持的 4 个:ca...
封面图

离谱的 CSS!从表盘刻度到艺术剪纸

2022-05-05
阅读 9 分钟
3.4k
某日,群里有这样一个问题,如何实现这样的表盘刻度:这其实是个挺有意思的问题,方法也有很多。单标签,使用 conic-gradient 实现表盘刻度最简单便捷的方式,就是利用角向渐变的方式 conic-gradient,代码也非常简单,首先,我们实现一个重复角向渐变: {代码...} {代码...} 其实比较难理解的是 calc((360 / 60) * 1deg...
封面图

CSS 阴影进阶,实现更加的立体的阴影效果!

2022-04-28
阅读 7 分钟
7.7k
CSS 阴影的存在,让物体看上去更加有型立体。然而,在最简单的阴影使用之上,我们可以实现更多有意思且更加立体的阴影效果。本文将带大家看看如何使用 CSS 实现几类比普通阴影更加立体的阴影效果。CSS 阴影基础CSS 中,明面上可以实现阴影的有三个属性:box-shadow - 盒阴影text-shadow - 文字阴影filter: drop-shaodw()...
封面图

让交互更加生动!有意思的鼠标跟随 3D 旋转动效

2022-04-26
阅读 7 分钟
8.3k
今天,群友问了这样一个问题,如下所示的鼠标跟随交互效果,如何实现:简单分析一下,这个交互效果主要有两个核心:借助了 CSS 3D 的能力元素的旋转需要和鼠标的移动相结合本文,就将讲述如何使用纯 CSS 实现类似的交互效果,以及,借助 JavaScript 绑定鼠标事件,快速还原上述效果。纯 CSS 实现元素的 3D 旋转如果不借...
封面图

Amazing!巧用 CSS 视差实现酷炫交互动效

2022-04-18
阅读 8 分钟
8.8k
本文将介绍利用 CSS 实现滚动视差效果的一个小技巧,并且,利用这个技巧来制作一些有意思的交互特效。关于使用 CSS 实现滚动视差效果,在之前有一篇文章详细描述过具体方案 - CSS 实现视差效果,感兴趣的同学可以先看看这篇文章。这里,会运用上这样一种纯 CSS 的视差技巧:使用 transform: translate3d 实现滚动视差这...
封面图

现代 CSS 解决方案:Modern CSS Reset

2022-04-14
阅读 4 分钟
9.2k
在早年间(其实也不是很早),写过几篇关于 CSS Reset 的文章 - reset.css 知多少。详细描述了当时业界比较常用的,两个 CSS reset 方案:reset.css 与 Normalize.css。以更为推荐的 Normalize.css 为例,它的核心思想是:统一了一些元素在所有浏览器下的表现,保护有用的浏览器默认样式而不是完全清零它们,让它们在各...
封面图

不借助 Javascript,利用 SVG 快速构建马赛克效果

2022-04-12
阅读 3 分钟
3.5k
之前在公众号转发了好友 Vajoy 的一篇文章 -- 巧用 CSS 把图片马赛克风格化。核心是利用了 CSS 中一个很有意思的属性 -- image-rendering,它可以用于设置图像缩放算法。何为 image-rendering?CSS 属性 image-rendering 用于设置图像缩放算法。它适用于元素本身,适用于元素其他属性中的图像,也应用于子元素。语法比较...
封面图