🗒️ svg版本轻量手写板

日常开发中,经常会遇到手写板的需求。对于大部分人来说使用canvas画布是最为方便的,而且也能很好的节省性能。这里在可汗学院学习的时候发现他们的答题手写用了svg的实现方法。这十分巧妙。不用考虑题目如何在cavnas画布上渲染了。

🗒️ 盒子模型

盒子模型的理解是前端使用css实现准确布局、处理元素排列的关键,下面是对MDN上盒子模型文章的一部分难点做见解。 其一就是区块盒子和行内盒子上的行为,其二是2种盒子模型的大小问题。

🗒️ 浅谈CSS3中的视口单位

网站会在PC和移动端上浏览,那么各个浏览器和设备的差异性,会使得兼容处理是一件麻烦的事情。尤其是移动端上的那些个异形屏和内容展示的理念。对此我使用的是tailwind css 。今天要分享的是移动端100VH出现滚动的问题。

🗒️ 基于Iframe开发的微前端

在前端的开发中,经常会遇到这样的需求。A项目中的某个页面或者新增一个模块,需要嵌入B项目。然后B项目有可能需要C项目这种套娃式的项目嵌套。如果你是新开始做项目,那么我推荐你使用乾坤或者其他的微前端框架。但是如果你像我一样,项目以及成型,而且有很多公司自己的配置和域名不一样的各种各样的因素,导致你不能很好的使用微乾坤框架。那么通常大家使用的就是iframe。

🗒️ 基于esbuild搭建组件开发框架

在日常的前端开发中,经常需要开发一些组件。通常我们是基于某个特定的框架来开发,例如vue,react等等。对于页面的样式组件来说,没有什么太多的计较。但是如果开发一个画布工具或者一个音乐播放器的组件,那么这个组件必然会有很多功能,而且对于vue2/vue3,react版本,你可能每个都要开发一遍。那么web-component的开发理念就非常适合目前的需求了。但是通常的web-cmponent的开发中,对于JS我们可以很好的管理,拆分功能。但是对于dom样式的编写就极其不方便了。

🗒️ 手写一个简单的Swiper

这是模仿Swiper的功能,网上非常好用的一个组件。并不是想重复造车轮。主要是开发中遇到这个这样一个需求,但是又要非常高的一些定制化功能。主要还是全部引入Swiper会使得我编写组件很臃肿,不利于别人的使用。这里就当学习一下,自己实现一个简单的Swiper

🗒️ B站防遮挡弹幕实现

B站是一个以视频为主的社交媒体平台,其中一大特色就是弹幕,即用户可以在视频上方实时发送评论,与其他观众互动。弹幕可以增加观看视频的乐趣,也可以反映出视频的热度和受欢迎程度。然而,弹幕也有一个缺点,就是可能会遮挡住视频中的重要内容,影响观看体验。为了解决这个问题,B站推出了一种智能防挡弹幕技术 ,可以让弹幕自动躲避人形区域,达到弹幕不挡人的效果。

🗒️ 前端项目优雅使用svg

更麻烦的是有些图标悬浮上去是要改变颜色的。这里我找到了一种让svg方便引入的方法,而且能像字体文件一样,简单的改变颜色和大小。

🗒️ Vue3和Vue2的一些写法区别

本篇记录vue3和vue2在实现相同的逻辑上的一些语法差异,持续更新。

🗒️ 原生JS编写虚拟滚动

在开发项目的过程中,偶尔会遇到很大的数据,然后设计图上又是列表还不分页的情况。为此研究了下虚拟滚动的方案。虚拟滚动大致的思路是当你往下滚动,但最后一个计算的元素出现的时候,替换上面不见了的DOM元素,将它们从渲染的HTML中剔除,同理往上滚动,一个计算的元素出现在最上面的时候,表明需要加载上面的元素信息,并隐藏下面的DOM元素。演示地址

🗒️ Http和Https学习(一)

在实际开发中,部署的项目在服务器上,通过域名来访问,是否会发现有的域名是http协议有的是https协议。那么同一个网站,他既可以http访问,又可以https访问,他们是什么呢,他们之间有什么区别呢?

🗒️ vue3源码学习-2-实现构建流程

通过源码学习笔记1的实验操作,得到了个基础模版。那么接下来,我们需要实现构建流程,让我们的项目能打包运行。