-
hreflang是link标签的属性,非a标签属性;a标签中使用hreflang会被浏览器完全忽略,因其语义仅用于用户导航,不参与语言关系声明,而hreflang专用于head中link标签向搜索引擎声明多语言页面间的对应关系。
-
script-src白名单需用单引号包裹、空格分隔,仅列必需来源;必须显式写'self',不支持通配符或路径;内联脚本默认被禁,应优先用HTTP响应头配置并配合Report-Only模式调试。
-
必须同时设置value和max属性才能渲染progress标签;仅设value会失效,max默认为100但需显式声明;value超max会被截断,IE11及以下不支持,需降级;JS更新需防抖、用requestAnimationFrame、统一计算百分比;样式兼容性差,Chrome/Firefox伪元素规则不同;复杂需求应改用div+ARIA手写方案。
-
requestFullscreen()必须由用户手势(如click)同步触发,否则浏览器静默拒绝;需检查元素是否挂载且可见,iframe需加allow="fullscreen";退出时须先判document.fullscreenElement再调document.exitFullscreen()并兼容前缀。
-
HTML中需转义<、>、&、"、'五字符,\_通常无需转义但混用Markdown时需写\\_;短代码用<code>加转义,多行用<pre>。
-
用position:absolute+top:0+left:0+width/height:100%使图片叠于父容器左上角,父容器需设position:relative和明确高度,配合z-index与opacity切换,预加载图片并用object-fit:cover防变形。
-
sandbox的核心逻辑是默认锁死一切能力,使iframe成为受控容器;空sandbox=""会强制origin为"null"并停用脚本引擎,script标签、事件处理器全部失效。
-
Vue.js中计算属性需通过自定义Hook(composable)复用,封装为useXXX函数并返回ref/computed;跨组件共享应借助Piniastore或provide/inject,避免响应性丢失与性能问题。
-
Gmail为防止样式冲突,会在HTML邮件中所有带ID的元素前自动添加唯一随机前缀(如m_-6467880284962569820siteInfo),这是其沙盒化渲染机制的一部分,并非错误;自动化测试中应通过属性选择器容错处理,而非依赖原始ID。
-
手机运行HTML文件有多种方法:1.用浏览器直接打开本地HTML文件,适合静态页面查看;2.使用HtmlViewer、Dcoder等代码编辑App,支持编写与实时预览;3.通过微信小程序或JSFiddleMobile等在线工具粘贴代码运行,便于快速测试;4.复杂项目建议传至电脑,用专业工具调试。按需选择,灵活高效。
-
用border画三角形最稳,因不依赖伪元素、不触发重排、高DPI下不糊;伪元素在移动端易定位漂移、缩放发虚、iOSSafari偶发空白。
-
position:sticky失效的根本原因是最近滚动祖先无有效滚动行为;需确保父容器有height+overflow-y:auto或body可滚动,且用margin/padding为吸顶元素预留空间,再通过@supports降级并正确设置z-index。
-
CSS滤镜在网页设计中通过filter属性实现,能提升视觉冲击力并优化交互效果。1.它允许开发者对图像、视频或HTML元素应用多种视觉调整(如模糊、亮度、对比度、灰度等),无需修改原始内容;2.可用于图片美化、背景处理、主题切换、交互动画等场景,增强用户体验;3.使用时需注意性能问题,避免对大量元素频繁使用复杂滤镜,尤其是blur()和drop-shadow();4.兼容性方面,现代浏览器普遍支持,但老旧浏览器如IE不兼容,可通过@supports提供降级方案以实现渐进增强。
-
CommandPalette是一种轻量、可搜索、键盘优先的快捷操作入口,非系统弹窗或下拉菜单;它通过语义化DOM结构(如role="dialog"、role="listbox")、精准键盘交互(Ctrl/Cmd+K呼出、上下键导航、Enter执行)及动态命令管理实现高效操作。
-
replaceWith()是JavaScriptDOM方法,需先获取真实元素节点才能调用;传入字符串不解析HTML,应使用template或DOMParser转换为节点后再替换。