edyang

我干了什么 究竟拿了时间换了什么
技术分享时间线软件开发、设备接入、视觉与运维实践

深入 CSS:浮动、父容器高度与 BFC

子元素浮动后,父容器背景像消失了一样,常见原因是普通文档流没有为浮动子项撑出同样高度。

子元素浮动后,父容器背景像消失了一样,常见原因是普通文档流没有为浮动子项撑出同样高度。 本文使用HTML5、CSS 与当时浏览器可支持的布局能力,示例为局部页面。页面表现由文档结构、布局规则和浏览器环境共同决定。本文以可核对的 DOM(文档对象模型)和样式计算为起点,不使用后续才普及的布局属性。 1. 从现象推到机制 浮动影响后续行盒与周围排布,父级高度计算需要理解浮动与格式化上下文的...

深入 CSS:盒模型中的宽度究竟包括什么

两个看似各占一半宽度的元素,加上 padding 后却换行,原因通常在盒模型计算。

两个看似各占一半宽度的元素,加上 padding 后却换行,原因通常在盒模型计算。 本文使用HTML5、CSS 与当时浏览器可支持的布局能力,示例为局部页面。页面表现由文档结构、布局规则和浏览器环境共同决定。本文以可核对的 DOM(文档对象模型)和样式计算为起点,不使用后续才普及的布局属性。 1. 从现象推到机制 content-box 的 width 只描述内容区,边框和内边距继续增...

彻底卸载 Navicat Premium for Mac

小计安装过程

数据库连接信息存放在 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ~/Library/Application\ Support/PremiumSoft\ CyberTech/preference.plist 可以尝试以下方法,在卸载navicat后将残留文件彻底删除: 打开终端,依次输入以下命令: sudo rm -Rf /Applications/Navic...

深入 HTML:图片尺寸、比例与页面跳动

图片加载前页面很短,加载后文字突然下移,往往是没有提前保留布局空间。

图片加载前页面很短,加载后文字突然下移,往往是没有提前保留布局空间。 本文使用HTML5、CSS 与当时浏览器可支持的布局能力,示例为局部页面。页面表现由文档结构、布局规则和浏览器环境共同决定。本文以可核对的 DOM(文档对象模型)和样式计算为起点,不使用后续才普及的布局属性。 1. 从现象推到机制 图片文件尺寸、元素布局尺寸与设备像素比不是同一个概念。给出合理宽高可以保留比例,响应式...

深入 HTML:表单提交的默认行为与校验

点击按钮突然刷新页面,有时不是 JavaScript 失效,而是按钮处在表单内并触发默认提交。

点击按钮突然刷新页面,有时不是 JavaScript 失效,而是按钮处在表单内并触发默认提交。 本文使用HTML5、CSS 与当时浏览器可支持的布局能力,示例为局部页面。页面表现由文档结构、布局规则和浏览器环境共同决定。本文以可核对的 DOM(文档对象模型)和样式计算为起点,不使用后续才普及的布局属性。 1. 从现象推到机制 表单的 action、method 和控件 name 决定提...

深入 HTML:语义结构比 div 数量更重要

页面能显示不等于结构清楚。

页面能显示不等于结构清楚。标题层级、导航和表单语义会影响阅读、可访问性与后续维护。 本文使用HTML5、CSS 与当时浏览器可支持的布局能力,示例为局部页面。页面表现由文档结构、布局规则和浏览器环境共同决定。本文以可核对的 DOM(文档对象模型)和样式计算为起点,不使用后续才普及的布局属性。 1. 从现象推到机制 HTML 描述内容关系,CSS 决定视觉呈现。使用正确标题与 label...

Spring Cloud 学习:跨服务排查先打通请求身份

一个请求经过多个服务,只靠各自本地时间搜索日志,很难还原完整路径。

一个请求经过多个服务,只靠各自本地时间搜索日志,很难还原完整路径。 本文使用Spring Cloud 1.0 系列与其匹配的 Spring Boot 1.2,配置为结构片段。Spring Cloud(分布式应用工具集)把配置、注册、调用和容错连接起来,但远程调用依然会超时或产生不确定结果。服务拆分之前先明确每个数据的归属。 1. 从现象推到机制 入口生成关联身份,向下游显式传递,各服务...

Spring Cloud Hystrix:隔离和降级不能伪造成功

一个慢依赖占满线程后,可能拖垮原本不依赖它的请求。

一个慢依赖占满线程后,可能拖垮原本不依赖它的请求。隔离限制故障传播范围。 本文使用Spring Cloud 1.0 系列与其匹配的 Spring Boot 1.2,配置为结构片段。Spring Cloud(分布式应用工具集)把配置、注册、调用和容错连接起来,但远程调用依然会超时或产生不确定结果。服务拆分之前先明确每个数据的归属。 1. 从现象推到机制 Hystrix(容错隔离组件)围绕...

Spring Cloud Config:配置仓库也要有版本依据

配置中心把文件集中起来,但程序究竟读取了哪一版配置,仍需要可追踪。

配置中心把文件集中起来,但程序究竟读取了哪一版配置,仍需要可追踪。 本文使用Spring Cloud 1.0 系列与其匹配的 Spring Boot 1.2,配置为结构片段。Spring Cloud(分布式应用工具集)把配置、注册、调用和容错连接起来,但远程调用依然会超时或产生不确定结果。服务拆分之前先明确每个数据的归属。 1. 从现象推到机制 Config Server(配置服务)按...

Spring Cloud Ribbon:负载均衡选中实例以后仍可能失败

客户端负载均衡把请求分配给实例,不会自动消除单个实例的故障和请求副作用。

客户端负载均衡把请求分配给实例,不会自动消除单个实例的故障和请求副作用。 本文使用Spring Cloud 1.0 系列与其匹配的 Spring Boot 1.2,配置为结构片段。Spring Cloud(分布式应用工具集)把配置、注册、调用和容错连接起来,但远程调用依然会超时或产生不确定结果。服务拆分之前先明确每个数据的归属。 1. 从现象推到机制 Ribbon(客户端负载均衡)从实...