-
正确配置viewportmeta标签并结合CSS媒体查询是实现响应式布局的核心。首先在HTML的<head>中添加<metaname="viewport"content="width=device-width,initial-scale=1.0">,使页面宽度与设备屏幕一致,避免浏览器以桌面视口渲染导致内容过小。width=device-width确保CSS中的百分比和相对单位(如%、rem、vw)基于真实设备宽度计算,initial-scale=1.0保证页面初始不缩放。在此基础
-
使用position:fixed和transition可创建平滑动画的固定弹出框。1.用position:fixed将弹出框固定在视口,配合top、left和transform居中,z-index确保层级,叠加遮罩层;2.通过opacity、visibility和transform设置初始状态,利用transition定义动画效果,添加active类触发动画;3.使用JavaScript切换类名控制显隐,可监听transitionend事件优化移除时机;4.注意避免overflow裁剪、移动端兼容性问题,
-
IE6下float元素的margin双倍计算是其特有渲染缺陷:当float元素某侧边距紧邻父容器边缘时,该边距被错误计算两次;display:inline可临时修复,因触发hasLayout子状态绕过bug路径。
-
预加载(preload)是高优先级、立即下载当前导航必需资源,预取(prefetch)是低优先级、空闲时下载未来可能使用的资源;前者提升首屏确定性,后者优化后续交互速度。
-
usemap属性必须带#前缀且严格匹配<map>的name值,大小写敏感;area的shape和coords需按格式书写;响应式下需JS重算坐标或改用SVG。
-
Flex多列布局核心是设容器display:flex,用flex-direction、flex-wrap和子项flex属性控制排列;三栏等宽用flex:1而非width百分比;两栏自适应推荐flex简写组合;响应式切换需配合flex-wrap和媒体查询。
-
font-weight支持100–900整百数值及normal、bold等关键字,400等价normal、700等价bold;其余值是否生效取决于字体文件是否包含对应字重,浏览器仅保证实现400和700。
-
会,浮动元素会覆盖标准流中的块级元素,因其脱离文档流后视觉层级更高,导致未浮动的div、p等被遮挡,而z-index对纯浮动元素无效。
-
pattern属性是:valid生效的前提,仅对文本类输入有效且需注意全匹配机制、移动端兼容性及JS补位校验。
-
对象解构中别名(用冒号)解决命名冲突,默认值(用等号)仅对undefined生效;二者可共存,如{username:loginName='访客'},先重命名再判断是否undefined。
-
HTML5的<mark>标签在转PDF时默认不保留高亮,需显式定义CSS样式并选用支持该标签的工具;wkhtmltopdf和WeasyPrint支持但表现不同,pdfmake/jsPDF则完全忽略,推荐用class替代并配合打印预览验证。
-
展开运算符(...)实现浅拷贝并覆盖属性,即先展开原对象再以后面同名属性为准;仅复制顶层属性,嵌套引用类型仍共享内存;支持解构排除、动态键及条件更新,比Object.assign更声明式。
-
crossorigin="anonymous"是<script>标签中实现跨域模块安全加载的关键属性,它强制请求不携带凭据(如Cookie、Authorization),要求服务端响应Access-Control-Allow-Origin且不可设Access-Control-Allow-Credentials:true,同时屏蔽脚本错误详情、保护模块内部状态,并影响integrity校验行为;CDN加载、动态import()或需调试sourcemap时必须显式声明。
-
trigger是Vue3响应式系统中负责派发更新的核心机制,由Proxy的set拦截器隐式调用,根据操作类型(SET/ADD/DELETE)触发对应依赖;它与triggerRef的区别在于:前者是内部函数作用于reactive/ref,后者是供开发者手动唤醒shallowRef响应的API。
-
canvas.width/height设绘图缓冲区分辨率,style.width/height仅控制CSS显示尺寸;二者不一致会导致缩放失真;正确做法是按devicePixelRatio动态设置缓冲区并用CSS匹配显示尺寸。