-
HTML画中画(PiP)窗口尺寸和位置由浏览器强制限定,无法通过JS操控;document.pictureInPictureElement为空或requestPictureInPicture()失败主因是未满足用户手势触发、视频元数据已加载、muted属性设置及iframe沙箱权限等条件。
-
原生touch事件足以胜任多数滑动场景,如轮播图、横向滚动等;优先使用touchstart/touchmove/touchend,配合touch-action控制拦截权,避免盲目引入手势库。
-
Stripe的PaymentIntentID可安全暴露给客户端,它本身不包含敏感信息,也不可被用于未授权操作;配合服务端验证,可用于安全地定制支付完成页内容。
-
HTML文档必须以<!DOCTYPEhtml>开头且严格位于第一行,<head>中必需<title>和<metacharset="utf-8">(第二行),<body>内用语义化标签替代<div>,<footer>表归属而非位置。
-
用grid-template-rows:0fr→1fr可实现平滑高度过渡,因fr是可插值弹性单位;需满足三前提:容器有确定高度上下文、显式声明grid-template-rows、内容区overflow:hidden。
-
<q>标签引号依赖CSS的quotes属性和伪元素,非硬编码;默认quotes值因浏览器而异,中文需手动设置;嵌套自动切换层级;cite仅语义有效,不渲染引号;<q>与<blockquote>语义不可互换。
-
不能,embed标签已无法可靠播放视频;现代浏览器禁用插件支持,video标签才是原生、安全、兼容的替代方案。
-
插槽(slot-scope或#default)是最常用、最直观的ElementUI表格自定义列方式,适用于渲染按钮、标签、状态徽章等非文本内容;Vue2用<templateslot-scope="scope">,Vue3用<template#default="scope">,均通过scope.row访问行数据,需注意语法差异、插槽位置及避免与prop冲突。
-
String.prototype.trim()不处理零宽空格(\u200b)、BOM(\ufeff)、不间断空格(\u00a0)、全角空格(\u3000)等字符,需用正则组合清理:先清除首尾BOM及零宽符,再统一类空格为标准空格,最后trim。
-
codePointAt()用于获取指定位置的Unicode码点值,需结合遍历与范围判断识别控制符;关键范围包括U+0000–U+001F、U+007F、U+0080–U+009F、U+2000–U+200F、U+2028–U+202E、U+2060–U+206F及U+FEFF。
-
浏览器需通过navigator.geolocation获取经纬度,但必须满足HTTPS和用户主动触发两个条件;国内推荐用高德AMap.Geolocation提升精度,百度BMapGL.Geolocation需显式启用WebGL并注意坐标系转换。
-
autofocus仅在页面初始加载时对静态HTML元素生效,动态插入、模态框、框架组件中均失效,需用JavaScript显式调用.focus()并配合时机控制与兼容性处理。
-
Symbol是JavaScript的原始类型,用于创建唯一不可变值以避免属性名冲突;其作为对象键时不可枚举但可通过Object.getOwnPropertySymbols获取,Symbol.for()支持全局复用,但需慎用。
-
因为浏览器解析HTML时会自动修正非法嵌套:p只允许phrasingcontent,遇到div即强制闭合p标签,生成的DOM结构与源码不同,JS和CSS操作均基于修正后的树。
-
只用transform和opacity做动画是低端安卓机(Android5–7WebView)维持60fps的底线,因其走合成线程不触发重排重绘;其他属性如top/left/width/height/color/background-color会引发主线程阻塞,导致帧率骤降。