首页

鑫空间鑫生活

feed:https://www.zhangxinxu.com/wordpress/feed
cron:8 20 * * 5
HTML select下拉框支持hr元素啦
published:Sun, 29 Dec 2024 14:25:59 +0000
所有现代浏览器又悄咪咪地更新了一个HTML新特性,就是select元素里面可以使用hr元素创建分隔线了,具体效果和个中细节可进文了解。
一个新的CSS媒体查询prefers-reduced-transparency
published:Thu, 02 Jan 2025 15:46:13 +0000
浏览器最近又支持了一个新的CSS媒体查询prefers-reduced-transparency,与用户体验密切相关的,有兴趣的可以了解下其语法和作用。
Broadcast Channel API简介,可实现Web页面广播通信
published:Sun, 12 Jan 2025 15:53:31 +0000
浏览器支持了一种全新的广播式的跨页面通信Broadcast Channel,此API看起来挺复杂,实际使用下来,简单得超乎想象。
如何手搓SVG半圆弧,手把手教程
published:Tue, 14 Jan 2025 15:10:19 +0000
项目中遇到个特殊的圆环图形加动画需求,看我如何使用M...A...圆弧指令手写最终的SVG代码(内含坐标计算JS方法,文字环绕实现等)。
CSS Grid布局中的subgrid的适用场景
published:Sun, 24 Nov 2024 16:47:24 +0000
subgrid这个子网格特性当时Grid布局出来之后,呼声很高,现在终于支持了,非常适合那种比较规整的多层次嵌套的布局,赶快来了解一番吧。
CSS好用的color-mix颜色函数也可以使用啦
published:Thu, 28 Nov 2024 16:14:21 +0000
目前所有现代浏览器都已经支持color-mix()这个颜色函数了,这个函数可以实现关键字颜色值的半透明表示,是其他CSS、JS语法都无法取代的实用特性,本文还有色调插值方法的介绍。
哇哦,font-palette支持动画和palette-mix()混合函数了
published:Wed, 04 Dec 2024 15:39:06 +0000
font-palette彩色字体又支持新特性了,一是可以使用palette-mix()实现基础模板的颜色混合,二是支持animation和transition动画了,至此Web字体渲染的表现力更上一层楼。
英文单词朗读基于音素预估时长的JS算法
published:Thu, 05 Dec 2024 16:32:44 +0000
基于英文单词的发音规则,精准预估TTS语音合成每段内容所占据的时长,以便实现更精准的字幕同步,冷门应用场景,但却是稀缺的算法资源,值得收藏备忘。
全新的CSS相对颜色语法-使用from和calc()
published:Wed, 11 Dec 2024 15:56:35 +0000
本文介绍非常实用的CSS相对颜色语法,可以解构现有颜色,轻松实现相邻色、反色、半透明色等效果,有效减少项目的CSS颜色变量数量。
如何使用JS获取系统内存、CPU/GPU、电量等信息
published:Sun, 22 Dec 2024 16:31:51 +0000
有些前端开发可能还不知道,JavaScript是有能力获取操作系统的内存、CPU/GPU、电量、蓝牙、掉线等信息的。
这啥?CSS calc-size和interpolate-size,真学不动了
published:Thu, 14 Nov 2024 13:54:23 +0000
好消息,height:auto、width:fit-content这些以前无法触发transition过渡效果的CSS声明,现在也能动画啦,就是使用calc-size()函数或interpolate-size属性。
JS文本选区变化selectionchange事件实践小记
published:Sun, 17 Nov 2024 14:18:54 +0000
最近做的项目用到了一个比较冷门的DOM事件API selectionchange事件,文本选区变化时候触发,简单记录下,希望日后可以帮到遇到类似需求的同行。
Pixi.js中ColorMatrixFilter自带滤镜效果一览
published:Thu, 31 Oct 2024 14:12:28 +0000
算是把pixi.js中的颜色矩阵算法滤镜的使用和各种渲染效果给摸了个透,一通百通,对SVG滤镜,canvas 2D滤镜的学习与应用也是颇有帮助的。
趁热打铁,SVG feColorMatrix滤镜gogogo!
published:Sun, 10 Nov 2024 16:17:23 +0000
充分且深入学习SVG feColorMatrix滤镜的语法,矩阵变换原理,常见颜色滤镜参数值,生成工具等。
Object.is/===、数组at/直接索引、substring/slice的区别
published:Thu, 24 Oct 2024 14:57:18 +0000
介绍几个JS中非常雷同的方法或者语法,不知道诸位是否可知其中的差异?
关于《HTML并不简单》这本书
published:Tue, 23 Jul 2024 07:11:59 +0000
盼星星,盼月亮,我的第5本书《HTML并不简单》已经正式上架了,这里讲讲为什么会想到写一本关于HTML的书籍,介绍下本书的内容结构,签字版购买等信息,希望可以得到大家的正版支持。
独家,MP3音频淡入淡出播放和转换的JS实现
published:Sun, 28 Jul 2024 17:02:44 +0000
本文通过案例演示如何使用开源JS库实现音频淡入淡出、原生JS又该实现,以及如何从底层对音频进行淡入淡出转换,都是少见的技术分享。
页面级可视动画View Transitions API初体验
published:Sat, 10 Aug 2024 13:45:31 +0000
View Transitions API可以让页面元素在无需设置具体定位属性值的情况下实现各种各样的动画效果,是个很强很有用的新特性。
不能落后,好好缕缕CSS滚动动画
published:Fri, 23 Aug 2024 14:18:10 +0000
CSS滚动动画比我预想的要强多了,项目中又有很多JavaScript代码可以淘汰了。
搞懂SVG中各种Light相关的光源滤镜
published:Sun, 08 Sep 2024 16:10:51 +0000
SVG光影相关的滤镜元素有5个,乍一看,还挺复杂,可细细一学,哦,原来也就是这么回事。
来了来了,scrollend滚动停止事件也支持了
published:Wed, 11 Sep 2024 15:18:36 +0000
Chrome和Firefox浏览器都已经支持scrollend滚动停止事件了,快进来瞅瞅吧。
好消息,align-content垂直居中也适用普通元素啦
published:Fri, 13 Sep 2024 15:36:32 +0000
之前使用align-content控制元素的垂直对齐仅适用于Flex或Grid元素,而现在,Block元素也能使用啦!
实用的JS对象分组静态方法Object.groupBy()
published:Thu, 19 Sep 2024 15:32:18 +0000
好消息,所有现代浏览器都已经支持Map.groupBy()、Object.groupBy()静态分组方法了,我们的JavaScript代码又可以进一步简化了。
时隔两年,Chrome也支持round等CSS数学函数了
published:Wed, 25 Sep 2024 16:04:18 +0000
最近Chrome进行了第4批CSS数学函数的支持,包括mod()/rem()/round(),其中round()函数尤为的实用。
Nice! Safari也支持CSS @perporty规则了
published:Thu, 10 Oct 2024 15:10:38 +0000
CSS @perporty规则最具代表性的作用是扩大了CSS动画和CSS过渡效果的应用范围,还是挺实用的一个Houdini特性。
CSS initial-letter属性,嗯……也就这样吧
published:Thu, 21 Mar 2024 15:34:35 +0000
带大家快速了解下CSS initial-letter属性,可以更好地设置首字母的排版效果。
CSS Nesting嵌套与@scope规则也太雷同了吧?
published:Sun, 31 Mar 2024 12:06:28 +0000
既生瑜何生亮,没想到CSS有语法和作用如此相似的两套规则,一个是范围,一个是嵌套,大部分时候两者可以互相替换,怎会如此呢?
SVG滤镜系列之搞懂元素
published:Thu, 11 Apr 2024 14:01:19 +0000
要想成为前端图形表现领域的高手,要必要弄懂SVG中各种滤镜元素的语法与作用,先从简单的feblend元素开始。
今天学习SVG滤镜feGaussianBlur和feDropShadow
published:Sun, 14 Apr 2024 15:39:56 +0000
模糊和投影算是SVG滤镜中学习难度最低的元素了,所以放在一起介绍,从中可以看到CSS模糊和投影滤镜语法的影子。
node环境中使用fluent-ffmpeg每隔一秒视频截图
published:Mon, 22 Apr 2024 03:20:31 +0000
后端这块只会Node.js的前端工程师如何实现每隔一两秒就获取一张小尺寸的视频截图的需求呢?
不使用font-weight等CSS实现文字变瘦或变胖效果
published:Sun, 12 May 2024 14:16:25 +0000
今天终于发现了一种适用于各种背景环境的文字变瘦方法,此方法居然无需用到任何与文字相关的CSS属性。
如何用简单的Web方法实现图片的马赛克效果
published:Sun, 19 May 2024 16:18:16 +0000
本文介绍两种Web中实现图片马赛克的方法,一个是SVG滤镜的,一个基于某个CSS属性的,都比较简单,不复杂。
记一次技术交流,feMerge滤镜复制任意DOM元素样式
published:Thu, 30 May 2024 14:38:29 +0000
没想到吧,借助SVG看似不起眼的feMerge滤镜,我们可以轻松实现任意DOM元素的样式的投影复制效果,还支持动画哦。
聊聊Top Layer顶层特性的隐患与实践
published:Mon, 10 Jun 2024 16:00:18 +0000
最近尝试在Dialog对话框组件中大肆使用顶层特性,以便减少z-index这类层级的判断,结果发现事情并没有预想的那样顺利,顶层特性也是有隐患的,好在有低成本的解决方法。
不改变音调情况下Audio音频的倍速合成JS实现
published:Thu, 29 Feb 2024 14:22:22 +0000
音视频合成的时候,有倍速合成的需求,起初,我以为这只是个手到擒来的小需求,细究之下发现问题并不简单……
今天才知道,Web网页也能阻止息屏了
published:Sun, 17 Mar 2024 15:35:45 +0000
全新的Screen Wake Lock API,可以让网页无论放置多久,都不要担心熄屏,或出现屏保,Web如今越来越强了。
CSS @scope他来了
published:Sun, 21 Jan 2024 13:53:26 +0000
从名称上看,@scope似乎是实现CSS作用域的,这个讨论了近20年的特性终于是要支持了吗,还是并非如此?
HTML MicroData微数据结构简介
published:Wed, 31 Jan 2024 14:58:31 +0000
只要你的产品有SEO的需求,那么MicroData微数据就是必须要了解的知识,通过几个属性,让数据结构更适合搜索引擎识别。
使用JS快速获取video视频任意位置的缩略图
published:Mon, 15 Jan 2024 15:55:26 +0000
其实获取视频的缩略图并不需要视频解码就能实现,方法就是其貌不扬的HTML video元素。
时代变了,该使用原生popover属性模拟下拉了
published:Thu, 11 Jan 2024 15:01:33 +0000
Firefox也正式支持popover属性了,大人,时代变了,所有的下拉效果要换种实现方式啦。
纯JS实现图像的人脸识别功能
published:Thu, 28 Dec 2023 15:55:02 +0000
原来前端纯JS就能实现人脸识别检测,使用简单,性能优异,准确率也高,有案例演示,有源码,希望可以帮到大家的学习。
JS实现图片相似度的判断
published:Mon, 25 Dec 2023 16:04:31 +0000
给大家演示下如何对比两个IMG图片的相似度,性能和准确度均不错,然后……圣诞节快乐!🎄
使用JS提取视频中的音频资源
published:Sun, 24 Dec 2023 13:47:59 +0000
其实使用Web Audio API就能从视频中提取音频文件了,本文有演示页面,有实现代码,有详细讲解,值得一看。
Tips:form元素reset后input不触发change事件处理
published:Tue, 12 Sep 2023 15:52:48 +0000
坚持探索Web标准下的原生浏览器开发行为,行为驱动和数据驱动的表单开发其实各有千秋,深入HTML,你会发现这个世界比你所知的要精彩的多。
HTML elementtiming属性初体验记录
published:Fri, 15 Sep 2023 15:58:22 +0000
自己体验了下,出乎意料,HTML elementtiming属性在性能监控这块,比预想的要实用的多。
MDN:Web/HTML/Attributes/elementtiming 可监听任意Element元素的加载性能
该属性可应用于 <img>​​​, <image>​​​里面的元素 <svg>​​​,海报图像 <video>​​​元素,具有 background-image​​​,以及包含文本节点的元素,例如 <p>​​​.
在 DOM 中,该属性体现为 Element.elementTiming​​​.
JS改变AudioBuffer音量并下载为新audio音频
published:Mon, 09 Oct 2023 14:50:57 +0000
本文介绍三种改变音频播放音量的方法,其中还有一种方法直接改变音频AudioBuffer数据源的音量,说不定你哪天就会用到。
又get到了,JS复制图片到剪切板
published:Sun, 17 Sep 2023 08:06:56 +0000
起初以为只是个小需求,实现JS复制图片到剪切板,直到深入了解,才发现,原来涉及到那么多知识,真是不虚此学。
目前火狐(120.0.1 (64 位))还不支持 **Uncaught (in promise) **ReferenceError: ClipboardItem is not defined​​​
纯JS实现多个音频的拼接或者合并
published:Tue, 10 Oct 2023 14:53:25 +0000
3年前有更新过JS剪裁audio音频,今天我们再讲讲如何使用原生的JS实现多个音频的拼接或合并,此文可是其他地方见不到的哟。
mp4box.js加WebCodecs 解码MP4视频帧并渲染
published:Tue, 14 Nov 2023 16:37:18 +0000
应该是国内第一篇专门介绍用mp4box.js和VideoDecoder方法解码MP4视频序列帧的文章了。
聊聊Web网页中资源加载的优先级
published:Sun, 29 Oct 2023 15:55:41 +0000
想要提高网页的加载体验,其实有个非常简单且实用的技巧,那就是改变请求资源的加载优先级,这也可以改变?没错!
剪映APP的视频特效如何在Web中JS实现
published:Sun, 19 Nov 2023 15:12:20 +0000
剪映中的视频特效虽多,其实就两类,一类改变原始像素,一类叠加混合,本文通过精简的源码和精致的案例给大家介绍具体如何实现。
cube格式的LUT滤镜也叫ColorMapFilter在pixi中应用
published:Tue, 21 Nov 2023 16:14:41 +0000
滤镜效果大体分两类,一类是算法滤镜,另外一类则是颜色映射滤镜,本文就将介绍如何使用pixi.js在WebGL中应用颜色映射滤镜。
本地MP3封面图、时长等信息的JS读取
published:Tue, 28 Nov 2023 16:21:17 +0000
本文通过真实的demo演示案例给大家展示如何使用JS获取本地音乐文件的封面图、文件名及时长等信息。