-
HTML的time元素不解析毫秒级时间戳,datetime属性仅接受ISO8601格式(如"2024-05-30T00:00:00Z"),需用newDate(timestamp).toISOString()手动转换,否则语义失效、辅助技术无法识别。
-
结论:需同时使用overscroll-behavior:none(body)与contain(滚动容器)+JavaScript补漏(iOS15以下),并确保fixed遮罩层内可滚动区域显式设overscroll-behavior:contain,避免滚动穿透。
-
media属性值必须是完整、语法正确的媒体查询表达式,如(min-width:768px),仅在<source>中生效且需配合<picture>使用,浏览器按顺序匹配首个满足条件的<source>,不匹配则回退至<img>的src。
-
Popover位置偏移根因是Popper.js初始计算时尺寸不准,需通过container:'body'隔离父级干扰、popperConfig定制modifiers、placement钩子类margin微调三步解决。
-
<p>用display:grid划分顶部/侧边/主内容三区最稳,推荐grid-template-rows:64px1fr48px、grid-template-columns:240px1fr,并配min-height:100vh防底部悬空;侧边栏需设overflow-y:auto和max-height:calc(100vh-64px-48px),主内容区用overflow:auto而非scroll,小屏响应式宜用transform位移隐藏侧边栏。</p>
-
小屏通知浮窗被截断应通过媒体查询动态调整fixed定位偏移和宽度:在768px及480px断点下调小top/right值,480px下设width:calc(100vw-16px)并显式left:auto,禁用transform替代定位,键盘弹出时需JS配合处理。
-
掌握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不可重用,重试须新建控制器。