-
掌握TailwindCSS中border和border-radius工具类可提升开发效率:1.使用border、方向类、宽度类、样式类和颜色类快速设置边框;2.利用rounded系列类控制圆角大小及方位;3.结合边框与圆角构建卡片、输入框、按钮等组件,并配合overflow-hidden实现内容裁剪。
-
:nth-last-child(2)选中所有同级子元素中倒数第二个且类型完全匹配的元素,因受空白文本节点、注释、混杂标签等DOM结构影响常失效;:nth-last-of-type(2)仅按同类型元素倒数计数,更稳定。
-
按钮定位不稳的三大主因是父级未设position:relative导致脱离文档流、top/left写死像素值破坏响应式、z-index因层叠上下文失效;需配合显式图片宽高预留空间。
-
应使用100dvh替代100vh,兼容老版本则结合focus/blur监听与min-height:100vh+height:100dvh层叠;fixed输入框避免scrollIntoView,改用scroll-margin-bottom或手动scrollTo;键盘收起用visualViewport.resize替代resize事件;flex布局需设height:100dvh及子项min-height:0。
-
发票必填6字段为:invoiceTitle(营业执照全称)、taxNumber(15或18位信用代码,需正则校验)、bankName(开户行全称)、bankAccount(19位纯数字账号)、registerAddress(精确到门牌号)、registerPhone(带区号固话);字段名、格式须严格匹配财税系统要求。
-
navigator.clipboard.writeText()报“Permissiondenied”是因为未在用户手势(如点击)触发的HTTPS/localhost环境中执行,或iframe缺少相应sandbox和allow权限。
-
关键CSS是提取首屏必需样式,排除媒体查询、伪类等;推荐critters(构建时)、penthouse(服务端)或cheerio(静态HTML),正则匹配不可靠。
-
固定宽高弹窗居中推荐用transform:translate(-50%,-50%),需配合top:50%、left:50%和定位上下文;margin负值仅适用于已知确切像素宽高的场景,易受动态内容、滚动条、box-sizing等影响,且不兼容IE8以下。
-
能,但需每个fetch显式传入同一AbortController的signal实例;复用controller可多次abort,新建controller则旧请求不受影响;已abort的signal不可重用,重试须新建控制器。
-
用background-clip:text实现文字渐变色需同时设置background-image、background-clip:text和color:transparent,并添加-webkit-background-clip:text前缀;color不支持渐变函数,SVG方案更兼容但语义性弱。
-
HTML页面内存占用主要由资源加载、JavaScript运行、DOM节点和渲染行为决定;全局变量和window对象易致泄漏,因未清理的引用会阻止垃圾回收;应使用WeakMap/WeakRef、显式清理定时器与监听器、避免闭包捕获大对象;innerHTML批量插入比document.createElement+DocumentFragment内存开销更大;ChromeDevTools需用堆快照和分配采样定位问题,而非仅看任务管理器内存数值。
-
HTML计算器是轻量级在线工具的前端实现,适合客户端即时运算,但需后端支持历史记录、分享链接等功能;其可用性取决于精度处理、错误防护与响应式设计等细节。
-
直接用transform做变形动画完全可行,但必须配合transition或@keyframes才能动起来;单独写transform只是“定格变形”,不是动画。transition至少需指定transition-property:transform、transition-duration(如0.3s)和transition-timing-function(如ease-out),缺一不可;@keyframes定义后须通过animation属性显式绑定,且注意animation-fill-mode:forwa
-
最简方案是直接给body加background-attachment:fixed,但iOSSafari和部分安卓WebView不支持,且Chrome在body有transform等属性时也会禁用;推荐用body::before伪元素模拟fixed效果,需设position:fixed、z-index:-1、pointer-events:none,并确保background-size:cover和background-position:center。
-
::placeholder的opacity失效主因是浏览器前缀未全覆盖及opacity值过低;应同时声明所有前缀、用rgba替代opacity、通过:focus::placeholder实现过渡、并在深色模式下单独重写样式。