-
本文详解inline-block元素(如导航栏容器)下方出现不可见空白的底层原理,并说明为何开发者工具(F12)无法直接高亮该空白,同时提供vertical-align、display:block等可靠修复方案。
-
fixed元素脱离文档流并相对于视口定位,常用于导航栏或返回顶部按钮;当页面出现滚动条时,其全宽布局可能因滚动条占用空间而错位,可通过calc()、margin补偿或flex布局解决;同时需注意z-index避免遮挡,并在移动端考虑软键盘导致的定位异常,可采用sticky替代或监听事件调整定位,确保视觉一致性。
-
Chrome检测HTML5元素支持需用document.createElement模拟创建并检查特有属性或方法,如canPlayType、getContext、contentEditable等;语义标签用'classList'in判断;Modernizr可批量检测,但注意其返回的是能力而非完整兼容性。
-
WebSocket需服务端配合、状态管理、错误重连和协议设计;常见问题包括URL协议错误(须用ws/wss)、连接拒绝、关闭异常及JSON序列化要求;应检查readyState、实现心跳与指数退避重连,并重视消息ID与离线队列。
-
JavaScript对象首选字面量{}创建,注意引用赋值陷阱;Object.defineProperty可精细控制属性特性;in、hasOwnProperty、Object.keys等方法查询范围不同;delete删除属性而赋值undefined仅设值。
-
掌握margin设置可提升布局质量:通过margin控制元素间距,避免折叠(如用BFC或单侧margin),使用margin:0auto实现块级居中,并结合Flexbox的margin-auto分配空间。
-
transition不必作用于width/height,推荐用transform:scale()实现平滑缩放;需设初始值、transform-origin和will-change以避免布局偏移与卡顿,并针对hover/active及多端兼容做适配。
-
使用border-radius可实现元素圆角效果,基础语法为设置统一半径,如.box{border-radius:10px;},也可用%创建圆形头像;支持分别控制四个角,按顺时针顺序赋值或使用命名属性;通过斜杠/分隔可设置椭圆圆角,如20px/10px;实用技巧包括与overflow:hidden配合裁剪内容、用transition实现悬停动画,且值过大时浏览器会自动限制。
-
代码分割是将大体积JS文件拆分为按需加载的小块以提升首屏速度和用户体验。它通过动态import()实现路由级(如React.lazy、Vue异步组件)和功能级(如点击后加载xlsx)分割,并配合SplitChunksPlugin提取公共依赖、prefetch预加载及错误降级处理。
-
需将HTML5文件放入Apache的DocumentRoot目录(如/var/www/html/),配置权限、虚拟主机及mod_rewrite(单页应用需.htaccess回退规则),重启服务后通过http://localhost/myapp/访问。
-
font-smooth已废弃,-webkit-font-smoothing仅在macOSWebKit内核生效;Windows/Linux忽略该属性,需依赖font-display、font-feature-settings和字体自身hinting优化;font-optical-sizing:auto仅对含opsz轴的可变字体有效。
-
搜索引擎可执行JavaScript但存在延迟,Bing等支持较弱,关键内容应服务端渲染;通过代码分割、async/defer加载、SSR/SSG优化性能,确保首屏快速呈现并提升SEO。
-
IE画布渲染慢的根本原因是IE9–11依赖GDI而非Direct2D,且drawImage、putImageData和clearRect触发大量同步重绘与位图拷贝;CSS缩放、非整数宽高、未复用ImageData、开启抗锯齿/阴影均加剧性能下降。
-
高德和百度地图JSAPI在加载方式、权限配置、坐标系、地理编码、覆盖物事件及异步加载判断等方面均不兼容。高德需带v=2.0且开通Web端权限,坐标系为GCJ-02;百度v=3.0兼容性更宽但需勾选JavaScriptAPI服务,且坐标经GCJ-02偏移处理导致点位偏移100–500米;两者地理编码结构、事件绑定语法(onvsaddEventListener)、信息窗打开方式及加载完成监听事件均不同。
-
链地址法通过将哈希冲突的元素用链表串联,实现高效插入、查找和删除。每个哈希桶存储链表头指针,支持负载因子大于1,对哈希函数质量容忍度高,删除操作简单,且可通过动态扩容、红黑树优化链表性能。相比开放寻址法,其优势在于实现简单、鲁棒性强,适用于动态数据场景。