Webhek上的所有文章
- 使用 Rust 真的能让软件更安全吗?
- 我是如何破解房东的锅炉的(192)
- Python 的新 t-strings(434)
- OpenAI 为什么要收购 Windsurf?(209)
- 两年的 Rust 使用感悟(66)
- 微软:Node.js 越来越多地被用于恶意软件分发和数据窃取
- 为什么没有像 BitTorrent 这样的 P2P 流媒体协议?(218)
- Python 异步编程的 9 个级别
- Oracle:为后量子密码学做准备
- Websockets 的缺陷以及替代技术
- 为什么人工智能公司的标志看起来像屁眼?
- 您不应该再使用的 11 个过时 Python 模块
- 我认识的最好的程序员
- 升级版青蛙过河智力游戏
- 如何防止暗色模式/夜晚模式毁了你的页面
- 甲骨文披露 Java 即将推出的五项新功能
- TypeScript 迁移到 Go: 10 倍性能的背后到底是什么?
- 在线 LaTeX 公式编辑器
- 网页小游戏:戳破泡泡
- 可构建的 CSS 样式表
- 您的应用是否已安装?getInstalledRelatedApps() 会告诉您!
- 小米盒子4魔改竖向屏适配抖音投屏刷机记录
- 使用 tabindex 控制焦点
- 针对 Web 的浏览器级图片延迟加载
- URL哈希控制网页文字突出高亮显示技术
- 使用 devicePixelContentBox 实现像素完美的渲染
- ResizeObserver:类似于元素的 document.onresize
- @property:为 CSS 变量赋予超能力(1)
- content-visibility:可提升渲染性能的新 CSS 属性
- 异步 Async Clipboard API 的 Web 自定义格式
- WEB 异步剪贴板 API
- 使用 track 标记给 web 视频添加字幕文件
- 使用 CSS ::marker 的自定义 list 列表符号
- 使用 CSS 的 clip-path 属性创建有趣的图片形状
- 使用 CSS 的 mask-image 属性对图片应用效果(1)
- 创建离线备用页面
- 如何创建高性能 CSS 动画
- 为什么有些动画速度很慢?
- Chrome 如何处理 Web app manifest 的更新
- CSS min()、max() 和 clamp()
- 高性能 CSS 动画的示例
- 停用鼠标加速以提供更好的 FPS 游戏体验
- 与 Service Worker 的双向通信
- 使用 Service Worker 向页面广播更新
- 命令式缓存指南
- 五种 CSS 居中技术对比(1)
- 现代 JavaScript 技术的发布、打包和安装
- 使用 HTTPS 进行本地开发
- 使用 DataTransfer API 打破拖放和复制粘贴障碍
- 使用 WebOTP API 在跨源 iframe 中填充动态密码表单
- 新型 CSS 函数伪类选择器 :is() 和 :where()
- 构建 CSS 配色方案
- CSS Grid 布局代码生成器
- @font-face 的 CSS size-adjust
- @property:新一代 CSS 变量现已支持通用浏览器
- 构建漂亮的 switch 开关组件
- JavaScript 事件深入探究
- 使用 CSS 模块脚本导入样式表
- CSS accent-color 强调色
- JavaScript 全局和局部变量范围
- 不要与浏览器的预加载(preload )扫描程序冲突
- 使用 Fetch API 时实现错误处理
- 如何使用 css 容器查询
- 利用单个 transform 属性对 CSS transform 进行更精细的控制
- List 列表创意样式(1)
- CSS 边框 border 动画
- 媒体查询 | 运算符 | 查询模式
- 添加元素边框的 3 种 CSS 方法
- 快速 CSS 技巧!一个动画加载 loading
- 使用 CSS 锚点定位技术绘制流程图
- 对 Async Clipboard API 的 SVG 支持
- 新 JavaScript Set 方法
- 使用 requestVideoFrameCallback() 对视频执行高效的每视频帧操作
- CSS 技巧:em 不是 “m”,但 ex 是 “x”
- 纯 CSS 渐变文本动画的快速实现
- 什么是 Source maps 源代码映射?
- 使用存储分区时的最大 IndexedDB 性能
- 使用 AVIF 格式图片让你的网站更快
- :user-valid 和 :user-invalid 伪类
- CSS subgrid
- 如何检测使用 Puppeteer 的(无头)Chrome 浏览器(2024 年版)
- 新 CSS 相对单位
- 2024 年每位前端开发者都应知道的 5 个 CSS 代码
- 每位前端开发者都应该知道的 6 个 CSS 代码
- 以 HTML5 格式录制音频和视频
- IndexedDB 用法介绍
- CSS 动画网格布局
- 使用 CSS light-dark() 和 CSS 系统颜色定制深色模式和浅色模式
- 通过 Keyboard Lock API 提供更好的全屏模式
- 利用新的浏览器扩展 Side Panel API 设计卓越的用户体验
- 弹出式窗口 popover API
- 四个新的 CSS 功能,可实现流畅的进入和退出动画
- 使用限制属性安全地进行弹出式交互
- 页面滚动驱动型 CSS 动画性能
- HTML inert 属性
- 使用滚动驱动的动画,在滚动时为元素添加动画效果
- CSS 透明度查询 Preferreds-reduced-transparency
- CSS :has() 系列选择器
- 您应该使用的 5 个鲜为人知的 HTML 标签
- css 动画新魔法
- 禁用 Windows Defender 的一种有趣方法
- 在下拉列表选择框里使用 hr 实现水平线分割(1)
- CSS 美观换行 text-wrap: pretty
- CSS 中推出四项新的国际功能
- 浏览器中的画中画模式
- 更改 WordPress 的搜索结果页面的URL地址(22)
- 适用于表单控件元素的 CSS 垂直书写模式
- 使用 Puppeteer 测试网络蓝牙
- 现在需要获得用户权限才能访问 MIDI 设备
- CSS 锚点定位
- 你需要知道的现代 CSS 技巧(2024 年春季版)
- 使用 :has() 作为 CSS 父选择器及其他更多内容
- 通过 SVG 而不是 JS 保护您的电子邮件地址
- CSS 文本框修剪 CSS Text Box Trim
- 用 CSS grid 呈现五线谱
- 一个 Div 能做的事情
- 为什么选择 ULID 而不是传统的 UUID 或 ID 来识别数据库?
- 你应该花多少时间坐着?新研究揭示了最佳健康的完美组合
- 用 MutationObserver 监控页面元素属性、Dom结构已经内容是否发生变化
- 基于时间的 CSS 动画
- 使用不安全的 Python 将速度提高 100 倍
- 什么是 docker?如何在 docker 中运行任何应用程序?
- PHP 不再糟糕(1)
- jpeg xl 图片格式和谷歌的阻击战
- 如何使用 javascript 创建和读取 cookie 的值?
- Libuv 是什么?做什么的?
- 通过 HDMI 接口控制 OLED 显示屏
- 如何从 Windows 安装程序安装 Linux
- LLM 大语言模型人工智能应用十大安全威胁(OWASP)
- 为什么以及何时需要使用 Kubernetes?
- SVG 动画不需要 CSS 或 JavaScript
- Docker Image 终极理解
- 人工智能在手绘动画中间帧技术中的应用现状
- 为什么有些 HTML 标记没有闭合标记
- HTML popover 弹出窗口属性
- Rust 101 入门
- 最漂亮的 CSS 动画背景示例及源代码
- Shell 历史记录是您最好的生产力工具
- 如何在 Ubuntu 和 Debian 上安装或升级到 PHP8(8.3)
- CSS Grid 网格布局中新引入的 Fr 单位用法教程
- 游戏程序员的 XDP
- 如何限制 flex 布局内 pre 的宽度溢出,或如何让 flexbox 里超宽子元素 overflow 表现正常
- 修改 WordPress 编辑器里允许或不允许某些标签属性
- 60+ CSS 搜索框代码 codepen 示例
- 青蛙过河智力小游戏
- 响应式图片
- CSS Grid Layout 网格布局用法
- 面向对象的 C 语言入门
- 高清 CSS 颜色指南
- 将 Sublime Text 4 里 “wrap selection with tag” 操作的默认 p 标记改 div 标记
- Python 里的所有双下划线(dunder)方法、函数和属性
- 你应该在CSS样式里明确声明长宽比 aspect ratio
- 数字消消乐
- 让开发人员更高效的 JavaScript 字符串方法
- Java 22 新功能与示例
- 交互式演示教程教会你精通掌握 CSS Flexbox 布局
- 解码为什么 JS 中的 0.6 + 0.3 = 0.89999999999999 以及如何解决?
- Valkey:得到 AWS、谷歌和甲骨文支持的 Redis 开源替代品
- 用 JavaScript 实现的 17 个改变世界的方程式
- Linux 危机工具(1)
- 交互式教程教你精通掌握 CSS Grid 布局
- Regex 字符”$”并不一定表示 “字符串结尾”
- HTML 垂直表单控件
- 用神经网络压缩图像
- 程序员对时区的误解
- HTTP/2 和 HTTP/3 对比和相关知识解释
- 使用 JavaScript 检测大写锁定
- 弹跳球:通用各种 Web 动画技实现弹跳球来比较各种 Web 技术
- 您应该使用的现代 Git 命令和功能
- 你需要知道的最低限度的 vi(m) 知识
- 4 个小技巧大幅提高源代码可读性
- 大语言模型(LLM)上的提示注入(Prompt injection)和越狱(jailbreaking )不是一回事
- X Window System 的一个特点:窗口无处不在
- 您绝对需要了解的 3 个基本 SQL 技巧
- 将网页漂亮的打印到纸上的CSS
- Dropbox:我们如何将 JavaScript 打包程序的大小减少 33% 的
- 软件开发十条谏言
- 了解 JavaScript 中的事件传播:冒泡与捕获详解
- 简述异步 Rust 编程
- Safari 17.4:一个 HTML 新原生开关(Switch)控件
- 如何居中一个 Div–CSS 居中技术终极指南
- 如今,是否有充分的理由在新项目中使用 C++ 而非 Rust ?(85)
- HTMX 与 React:全面对比
- Rust 和 C 语言速度比较
- 一些不为人知的 OpenBSD 功能
- 使用 SELECT 可以做的酷事
- 选择正确的框架:React Native vs. Swift vs. Kotlin vs. Flutter
- 互动式指导开发 SVG 加载旋转器
- 如何进行有效的代码审查
- 使用 Rsync 和 Unison 同步保持远程目录的最新更新状态
- linux cat 的妙用
- 如何用你的双眼读出二维码里的信息!
- utf8_unicode_ci 和 utf8mb4_0900_ai_ci 之间有什么区别?
- 良好代码审查的艺术
- 如何使用 Docker 容器实施互操作 TLS
- 打造现代WEB前端的 HTML 标签
- 在版本控制方面,我们能做得比 Git 更好吗?(296)
- 正弦波谐波序列生成器
- C 语言编程中两个方便的 GDB 断点技巧
- CMOS逆向工程:苏联老式计数器芯片为例
- AVIF 与 WebP:四个主要区别以及如何选择图片格式
- 现代图像格式:AVIF 与 WebP
- 如何使用 Node.js 和 Puppeteer 抓取网站
- Go 1.22 中的新功能:slices.Concat
- Go语言中的客户端分页(range-over 函数版)
- 获取展示 Python 模块中所有使用过的类、方法和函数
- 我破解列车上厕所的故事
- 初级前端开发人员常犯的 7 个 CSS 错误(以及如何纠正它们)
- CSS 媒体查询支持 Scripting
- 面向 Java 开发人员的机器学习:机器学习算法
- 乒乓球战争
- 新型图片格式:JXL 和 AVIF
- 开发人员满意度高达 97%: 谷歌是如何消除代码审查的痛苦的
- 如何在浏览器窗口之间共享状态和传输信息
- 使用 WebSockets p2p 文件传输
- CSS loading 效果生成器
- Puppeteer 速查使用手册
- CSS 3D 云朵效果
- 使用 Vite 和 PurgeCSS 删除 Bootstrap 5 未使用的 CSS
- 模糊半径比较
- HTML 美丽螺旋图生成器
- 我多年来一直使用的 Emacs 命令
- JavaScript 严格模式(Strict Mode)的几种开启方法及注意事项
- 最快的 Python 读取 Excel 方法
- 【译文】美国航天局(NASA)编写安全关键程序的 10 条编码规则
- ImageMagick中文使用手册:复合字体效果方法教程
- ImageMagick中文使用手册:文字写入图片处理用法教程
- 如何让 Submine Text 滚动条指示器更加清晰易见?
- ImageMagick中文使用手册:针对各种图像格式处理用法教程
- JavaScript 中对 Unicode 进行 base64 编码时需要注意的问题
- SSH over HTTPS
- ImageMagick中文使用手册:图像文件处理用法教程
- ImageMagick中文使用手册:基本用法教程
- 你的程序实际上可以并行使用多少个 CPU 内核?
- Linux 命令获取系统信息和高级硬件信息
- ffmpeg 命令行生成工具
- 你和亿万富翁之间有趣的对比
- 如何实现在 JavaScript 循环里的 async/await
- 如何通过命令行向 PHP 脚本传递参数
- 如何卸载 Ubuntu 服务器中的 phpMyAdmin
- 用交互式动画帮你理解SVG绘制弧线,二次、三次贝塞尔曲线
- 用25个例子一步步学习 SVG 绘制图片技术
- 您的页面上显示的是错误的日语
- 比 Rust 更难的都不足为惧
- 世界地理游戏:乘飞机从A国到B国途经哪些国家?
- 调试分析Rust程序的简单方法
- 使用 Wget 下载网页全部资源(含背景图片)
- 有趣的视觉多向图:使用扩散模型生成视觉错觉图
- 通过 css light-dark() 函数自适应用户设备的浅色主题和深色主题
- 如今你不再需要 JavaScript 来实现这些效果了,原生CSS+HTML就可以
- chrome.userScripts
- 在Linux find命令中正则表达式的各种用法
- React Native 还流行吗?(99)
- 使用cwebp批量将 JPG 和 PNG 转换为 WebP 图片格式
- 使用WordPress 的 “comment_class” filter 修改评论列表样式的方法
- 可以跟TinyPNG媲美的免费图片优化压缩工具
- 在css中使用 Calc() 函数的一些用法例子
- 如何在不丢失列数据的情况下更改MySQL表的列字段的位置?
- JavaScript 全栈解决方案比较:Angular、React、Vue.js 的对比
- Web 程序员为什么要遵循 HTML 优先原则?
- 浅谈龙芯LoongArch指令集和RISC-V
- 如何在 Vim 中剪切、复制和粘贴
- 项目捐给了开源基金会,作者手上还剩了什么?
- 聊聊如何在Java应用中发送短信
- 45 个 Git 经典操作场景,专治不会合代码
- ARM汇编快速入门
- 关于 Node.js 调试,你需要了解的一切
- 一个颇为有趣的 JavaScript 问题,除非你提前看答案,否则很难回答出来
- 程序员的乐趣(九)
- 写了 30 多个 Go 常用文件操作的示例,收藏这一篇就够了
- Go 语言数组和切片的区别
- 程序员的乐趣(八)
- 程序员的乐趣(七)
- 使用wget下载整个网站,包括图片
- 程序员的乐趣(六)
- 程序员的乐趣(五)
- SSH命令用法速查手册
- 程序员的乐趣(四)
- 程序员的乐趣(三)
- 我可以删除/var/log/journal 和 /var/cache/abrt-di/usr 目录下的文件吗?
- JavaScript程序员15分钟掌握80%的Rust语言知识
- 使用命令行升级Ubuntu系统更新包(update, upgrade, full-upgrade, dist-upgrade)
- 那些代码里有趣的字母拼图注释
- 程序员的乐趣(二)
- 程序员的乐趣(一)
- Word 快捷键速查表
- 编程语言Python中那些有趣的东西
- exiftool使用说明手册
- 三个点(…)在JavaScript语法中的作用:解构赋值
- Rust编程速查手册
- 门萨智商测试
- 使用JavaScript获取data属性值的方法
- 如何将WordPress首页重定向到某个页面或随机页面
- async await mysql nodejs 两种推荐技巧
- 如何在数据表中执行update,如果数据不存在就执行insert?
- ImageMagic批处理多个图片的一些方法技巧
- 如何用imagemagic扩展一张图片的画布大小?
- ccnews
- 解密报错ImportError: No module named Crypto.Cipher
- 解码谷歌浏览器加密cookies的方法