2025 年 05 月
0 篇文章
最近看到一则关于工具体验的讨论,虽然不完全与原帖相关,但我想借这个机会,谈谈我对工具的一些看法和使用哲学。一、工具就是工具,关键在于人我一直认为:工具本身就是中立的,它就在那里,不增不减。你觉得一个工具“顺手”或“难用”,其实更多取决于你自己是否熟悉、是否懂得如何使用它。正如同样是 DeepSeek,有人觉得它惊艳,有人却觉得不过如此。原因不在工具,而在使用者。以 DeepSeek 为例,在它出现之前,我
外部的 CSS 不能直接应用到 ShadowDOM 内部的元素。ShadowDOM 是 WebComponents 技术的一部分,它的设计目的之一就是提供样式封装(styleencapsulation),这意味着:外部页面的 CSS 不会影响 ShadowDOM 内部的样式。ShadowDOM 内部定义的样式不会“泄露”到外部页面中。示例说明假设你有一个自定义元素 <my-element>,它内部有 ShadowDOM:<m
真正能在滚动时拿到光标“位置更新”同时又最轻量的做法,其实是不每次都去测 Selection→getClientRects()或插入 marker,而是直接把上一次的坐标做“增量”调整。核心思路:基于滚动偏移的增量更新缓存上一次的绝对坐标 letlastPos={x:/*上次 computedx*/,y:/*上次 computedy*/};letlastScroll=newMap();//key:scroll
//创建全局唯一 markerconstglobalMarker=(()=>{constmarker=document.createElement('span');marker.textContent='\u200b';marker.style.cssText='position:absolute;visibility:hidden;pointer-events:none;';returnmarker
要实现无过渡的硬切换闪烁效果,需要使用 steps()时间函数。代码如下:#custom-cursor{animation:ablink1ssteps(1)infinite;/*关键修改在这里*/}@keyframesablink{0%{opacity:1;}50%{opacity:0;}/*添加中间关键帧*/100%{opacity:1;}}原理说明:steps(1)表示把动画分成 1 个跳跃步骤
seehttps://ld246.com/article/1746079460404//全屏菜单(Esc 退出全屏)//seehttps://ld246.com/article/1746079460404(()=>{//判断是否全屏状态 if(localStorage.getItem('isFullscreen')==='true'){constcomfirmHtml=`<divdata-key="di
seehttps://ld246.com/article/1746153210116//添加块到指定数据库(支持绑定块和不绑定块,支持文档块和普通块)//seehttps://ld246.com/article/1746153210116//注意:只能在块菜单中操作(你的右键可能不是块菜单)//version0.0.3//0.0.2(已废弃)//0.0.3 修改参数配置方式(()=>{//块菜单配置 c
js代码片段自动更新协议1.0
鉴于代码片段无法检查更新,写了个自动检查更新的代码片段。只要用户安装了该代码片段,且开发者代码片段中遵循以下协议即可。协议内容要让你的代码片段能自动检查更新,需遵循以下协议:代码片段的注释中必须有 name,version,updateUrl 三个标记比如//name 代码名称//version 版本号//updateUrl 更新地址//updateDesc 更新描述或/***name 代码名称*version 版
https://ld246.com/article/1746898886972
简洁版(不推荐,有风险)优点:代码简洁。缺点:要求用户至少安装一个插件。⚠️ 风险警告:当用户关闭第一个插件时,之前的绑定会失效。functioneventBusOn(eventName,callback){constplugin=window.siyuan.ws.app.plugins[0];if(!plugin){console.log('绑定事件'+eventName+'失败,请至少安装一个插件
参考思源移动端主菜单效果 element.style{transform:translateX(0px);}#menu{z-index:7;transform:translateX(100vw);top:0;}
百度 deepseekhttps://chat.baidu.com/search?word=%s%ChatGPT(#AI#)|https://chatgpt.com/?q=%s% 文心一言(#AI#)|https://yiyan.baidu.com/?q=%s%Kimi(#AI#)|https://kimi.moonshot.cn/_prefill_chat?send_immediately=true&
seehttps://ld246.com/article/1746316072165 需求:有两个数据表,A 为任务表,B 为工时记录表,A 中有一列为任务名称,B 关联 A 的任务名称。一个任务可能需要多次工作完成,每次工作都会在 B 中记录一次使用的工时。A 的任务表中有一列为总共花费的工时,会读取 B 中所有任务名相同的行,并将每行的工时汇总,写到 A 对应的总共花费的工时中。请问这样的模板列该怎么实现呢?我不知道如何从
/*通过给 ul 背景色添加固定宽度实现*//*背景线适配需配合下面的 js 代码实现*//*https://ld246.com/article/1724305128590#%E5%B7%A6%E4%BE%A7%E6%96%87%E6%A1%A3%E6%A0%91%E6%98%BE%E7%A4%BA%E5%B1%82%E7%BA%A7%E5%85%B3%E7%B3%BB%E8%83%8C%E6%99%AF%
方法一、通过数据库里的 html 代码获取//通过块 id 获取数据库 idasyncfunctiongetAvIdByAvBlockId(blockId){constav=awaitgetAvBySql(`SELECT*FROMblockswheretype='av'andid='${blockId}'`);if(av.length===0)returnerror("未找到数据库文档块,请检查数据库文档块 i
代码片段自动更新checkNewVersion
鉴于代码片段无法检查更新,写了个自动更新的函数,只要在代码加载时调用 checkNewVersion();即可。格式内容使用这个函数需遵循以下格式即可。代码片段的注释中必须有 name,version,updateUrl 三个标记比如//name 代码名称//version 版本号//updateUrl 更新地址//updateDesc 更新描述或/***name 代码名称*version 版本号*updateUr
*如何通过使用 CSS 的 xlink:href 属性选择 XML 元素?-腾讯云开发者社区-腾讯云*[https://cloud.tencent.com/developer/ask/sof/110624837](https://cloud.tencent.com/developer/ask/sof/110624837)*有人知道如何使用 xlink:href 属性选择 XML 元素吗?有关使用情况,请参见,但是它并不
*元素使用 align-itemscenter 和 overflowauto 之后,部分内容显示不全_align-items:center;-CSDN 博客*[https://blog.csdn.net/weixin_42335036/article/details/125515255](https://blog.csdn.net/weixin_42335036/article/details/1255152
在 CSS 中,margin:0auto;是通过设置左右外边距为 auto来实现块级元素的水平居中。如果你需要实现居左或居右的效果,可以通过以下方式实现:1.居左默认情况下,块级元素(如 div)会自动靠左对齐。如果需要显式设置,可以使用以下方法:方法 1:直接设置 margin-left为 0div{margin-left:0;/*左边距为 0*/}方法 2:使用 float(浮动)div{float:l
在 CSS 中,选择器的性能与其复杂性和匹配方式有关。你提到的 body.card-main.toolbar 和 body.toolbar 都可以唯一确定.toolbar 元素,但它们的性能表现有所不同。以下是详细分析:1.选择器的匹配过程 CSS 选择器的匹配是从右到左进行的。浏览器会先找到匹配最右侧选择器的元素,然后再检查其祖先元素是否满足左侧的选择器条件。body.toolbar:找到所有.toolbar 元素。
记录精彩的程序人生
开始使用
分类
标签