视野修炼-技术周刊第85期 | 图小小

欢迎来到第 85 期的【视野修炼 - 技术周刊】,下面是本期的精选内容简介

🔥强烈推荐

  1. pic-smaller - 图小小
  2. 精美的 CSS 背景图
  3. js 进阶问题

🔧开源工具&技术资讯

  1. Vue Fluid DnD - 适用于Vue的拖拽库
  2. 径向渐变背景生成
  3. TrasHTTPandas - HTTP 状态码测试

📚 教程&文章

  1. 不使用font-weight实现文字变瘦或变胖效果
  2. 256字节生成一个动态的城市画面

​也推荐大家关注一下最后的推荐内容(周刊的主要内容来源渠道)

下面开始本期内容的介绍,预计阅读时间 7 分钟。

🔥强烈推荐

1. pic-smaller - 图小小

基于 Web WASM 实现的在线图片压缩工具(纯前端,无需上传至服务端),支持多种常见图片格式JPEG, PNG, WEBP, AVIF, SVG, GIF

压缩质量可以媲美 tinypng ,操作界面也非常友好。

支持预览压缩前后效果对比。

整体效果还是很不错滴。

2. 精美的 CSS 背景图

支持一键复制 CSS 代码,比如下面这个。

css 复制代码
html {
  --s: 120px; /* control the size*/
  --c1: #e7525b;
  --c2: #b3ffc6;
  
  --_g: 80%,var(--c1) 25.4%,#0000 26%;
  background:
   radial-gradient(at 80% var(--_g)),
   radial-gradient(at 20% var(--_g)),
   conic-gradient(from -45deg at 50% 41%,var(--c1) 90deg,var(--c2) 0) 
      calc(var(--s)/2) 0;
  background-size: var(--s) var(--s);
}

3. js 进阶问题

仓库收集了许多 js 语法特色相关的问题究极八股,感兴趣的可以下来尝试一下。

我来摘抄2个有意思的。

🔧开源工具&技术资讯

4. Vue Fluid DnD - 适用于Vue的拖拽库

专为列表场景设计。

使用非常简单,对原代码极低的侵入性。

html 复制代码
<script setup lang="ts">
import { useDragAndDrop } from "vue-fluid-dnd";
const { parent } = useDragAndDrop(list);
<script>
<template>
   <ul ref="parent">
      <li v-for="(element, index) in list" :index="index">
        {{ element }}
      </li>
   </ul>
</template>

5. 径向渐变背景生成

6. TrasHTTPandas - HTTP 状态码测试

网站提供各种状态码的 HTTP 响应,可以用来调试各种状态码的响应情况。

📚 教程&文章

7. 不使用font-weight实现文字变瘦或变胖效果

利用 SVG 滤镜实现,核心代码如下

html 复制代码
<style>
data {
  font-size: 2.5rem;
  font-family: system-ui;
}
.erode {
  filter: url(#erode);
}
</style>
<data class="erode">苗条文案</data>
<svg xmlns="http://www.w3.org/2000/svg" width="0" height="0">
  <filter id="erode">
    <feMorphology operator="erode" radius="1" />
  </filter>
</svg>

8. 256字节生成一个动态的城市画面

全部代码如下

html 复制代码
<canvas style=width:99% id=c onclick=setInterval('for(c.width=w=99,++t,i=6e3;i--;c.getContext`2d`.fillRect(i%w,i/w|0,1-d*Z/w+s,1))for(a=i%w/50-1,s=b=1-i/4e3,X=t,Y=Z=d=1;++Z<w&(Y<6-(32<Z&27<X%w&&X/9^Z/8)*8%46||d|(s=(X&Y&Z)%3/Z,a=b=1,d=Z/w));Y-=b)X+=a',t=9)>

利用 canvas + 一段算法。

牛逼!当然作者也在文章里揭秘了原理,感兴趣的可以深入研究一下。

😛趣图


篇幅有限,如果你还没看够,可移步后面的推荐渠道,继续游览,历史周刊(<20)移步博客

⭐️强力推荐关注

相关推荐
Bs_MoneyMagnet1 小时前
基于springboot+vue的心理咨询预约与随访平台的设计与实现 源码+文档
vue.js·spring boot·后端·spring·毕业设计·旅游·计算机毕业设计
计算机魔术师1 小时前
Dario Amodei 发文呼吁为前沿 AI 降速并提出三点计划
前端
计算机魔术师1 小时前
OpenAI的AI代理偷偷给RubyGems下毒,我们却毫无察觉
前端
甲维斯1 小时前
0代码,0建模,3句话开发一个3D游戏!
前端·游戏·游戏开发
IT_陈寒2 小时前
Vue的响应式更新把我坑惨了,原来问题出在这
前端·人工智能·后端
tingke2 小时前
别再堆 AGENTS.md 了:前端团队的 Agent 上下文分层落地指南
前端
李明卫杭州2 小时前
React 复合事件系统对比解析
前端·javascript·react.js
葡萄城技术团队3 小时前
SpreadJS V19.2 新特性揭秘:FILTERXML 函数
前端
峰向AI3 小时前
Notion 太贵?这个 40K Star 的开源知识库,让你零成本搭建团队 wiki
github
行者全栈架构师3 小时前
Spring Boot 接入 MaxKey 单点登录:6 个内部系统,一次登录全通行
java·vue.js·后端