-
伪元素::after是纯CSS实现点击波纹的唯一可行载体,需配合position:relative、content:""、:active或touchstart触发、transform:scale()动画、transform-origin:center及JS坐标计算与移动端兼容处理。
-
最轻量兼容的无脚本跳转是使用<metahttp-equiv="refresh"content="0;url=https://example.com">,注意协议完整、引号规范;JS跳转用window.location.href更灵活;服务端301/302重定向最可靠;跳转前须校验URL有效性并防范开放重定向。
-
用Sass@function动态生成box-shadow值,通过层级参数$level计算offset、blur、spread和透明度,返回统一单位的字符串;不可用CSS变量替代,因其不支持运行时拼接且性能差。
-
float:left元素默认横向排列,堆成一列的主因是子项width为100%、父容器坍缩未清除浮动,或盒模型/空白符导致宽度超限;现代布局应优先选用flex或grid。
-
手绘风格页面需CSS模拟质感与canvas绘图结合;坐标须用getBoundingClientRect()计算,禁用offsetLeft;线条要抖动、圆头、禁抗锯齿;纹理优先SVG;移动端需preventDefault()和touchAction:none。
-
blockquote::before必须声明content才渲染,否则伪元素不存在;引号推荐用\201C/\201D;cite属性需attr(cite)显式调用;父元素须position:relative;尺寸定位应使用em/rem适配响应式。
-
:checked伪类配合~只能选中DOM中同级且位于其后的元素,需确保checkbox与目标元素同父、顺序正确、无无关节点阻断;错误结构或属性设置会导致样式失效。
-
HTML布局核心在于CSS控制而非标签堆砌;<div>仅提供结构,需配合display:flex/grid等声明才能实现真正布局;<table>布局已被废弃,语义化标签不替代CSS定位。
-
使用Foundation框架可快速创建响应式按钮。只需为按钮或链接添加.button类即可生成基础样式,如<buttonclass="button">普通按钮</button>。通过.primary、.success、.alert等类设置按钮颜色,.tiny、.small、.large调整大小,实现丰富视觉效果。为适配移动端,使用.expanded类使按钮全宽显示,适用于小屏幕设备。按钮默认为内联块元素,宽度自适应内容,结合网格系统可实现复杂布局控制。添加.di
-
scroll-padding在固定导航栏下跳转遮挡标题,因其默认作用于根容器且不自动补偿导航栏高度;需在滚动容器设scroll-padding-top(如calc(64px+env(safe-area-inset-top))),动态高度需JS更新;可与scroll-snap-type共用但需注意Safari优先级问题;Safari15.4+存calc+env首次失效bug,Firefox不支持逻辑属性缩写。
-
TrustedTypes不能彻底杜绝XSS,但可强制拦截未过滤的innerHTML赋值——前提是CSP响应头正确配置require-trusted-types-for'script'和trusted-typesdefault,且策略函数严格返回TrustedHTML(如用DOMPurify.sanitize(...,{RETURN_TRUSTED_TYPE:true})),禁用字符串拼接、正则过滤及类型绕过操作。
-
URLSearchParams构造函数不能直接解析完整URL,仅接受querystring(如"a=1&b=2");传入含协议域名或未编码特殊字符的字符串会导致解析失败,正确做法是用location.search或newURL(url).searchParams。
-
标签模板是JavaScript中模板字符串的高级用法,通过在模板字符串前添加一个函数名作为“标签”,将模板中的静态部分和动态插值分别传入该函数进行自定义处理。它允许开发者灵活控制字符串的拼接方式,常用于格式化输出、防止XSS、构建HTML或CSS片段等场景。其基本形式是定义一个函数(如myTag),接收两个参数:strings(模板中的静态文本部分)和values(动态插值的值),然后按需组合它们。例如,logColor函数可用于高亮控制台输出,safeHTML函数可自动转义HTML字符以防止XSS攻击,
-
CSS过渡需作用于可插值属性,width或left动画失效常因混用auto值或display/visibility切换;应优先用transform:translateX()配合确定数值和will-change优化,避免重排与兼容性问题。
-
推荐用CSSGrid实现三栏布局,因其简洁、语义清晰、响应式可控,HTML顺序可自由安排;关键写法为.container{display:grid;grid-template-columns:200px1fr200px;gap:16px;}。