4.4.6 border 等高布局技术。margin+padding 可以实现等高布局,同样,border 属性也可以实现等高布局。父级容器不能使用overflow:hidden 清除浮动影响,因为溢出隐藏是基于 padding box 的,如果设置了 overflow:hidden,则左浮动的导航列表元素就会被隐藏掉。
5.1.1 字母 x 与 CSS 世界的基线。在各种内联相关模型中,凡是涉及垂直方向的排版或者对齐的,都离不开最基本的基线。例如,line-height 行高的定义就是两基线的间距,vertical-align 的默认值就是基线。
5.1.2 字母 x 与 CSS 中的 x-height。CSS 中有一个概念叫作 x-height,指的是字母 x 的高度。CSS 中有些属性值的定义就和这个 x-height 有关,最典型的代表就是 verticalalign:middle。这里的 middle 是中间的意思。vertical-align:middle 并不是绝对的垂直居中对齐,我们平常看到的middle 效果只是一种近似效果。原因很简单,因为不同的字体在行内盒子中的位置是不一样的。
5.1.3 字母 x 与 CSS 中的 ex。ex 是 CSS 中的一个相对单位,指的是小写字母 x 的高度,就是指 x-height。它不受字体和字号影响的内联元素的垂直居中对齐效果。
5.2.1 内联元素的高度之本—line-height。,<div>高度是由行高决定的,而非文字。内联元素的高度由固定高度和不固定高度组成,这个不固定的部分就是这里的“行距”。换句话说,line-height 之所以起作用,就是通过改变“行距”来实现的。
“行距”分散在当前文字的上方和下方,也就是即使是第一行文字,其上方也是有“行距”的,只不过这个“行距”的高度仅仅是完整“行距”高度的一半,因此,也被称为“半行距”。如果我们理解了半行距,结合我们网页中的设置的 line-height 大小,就能根据标注获取准确的间距值。举个例子,假设 line-height 是 1.5,font-size 大小是 14px,那么我们的半行距大小就是(套用上面的行距公式再除以 2):(14px * 1.5 - 14px) / 2 = 14px * 0.25 = 3.5px。
5.1.1 字母 x 与 CSS 世界的基线。在各种内联相关模型中,凡是涉及垂直方向的排版或者对齐的,都离不开最基本的基线。例如,line-height 行高的定义就是两基线的间距,vertical-align 的默认值就是基线。
5.1.2 字母 x 与 CSS 中的 x-height。CSS 中有一个概念叫作 x-height,指的是字母 x 的高度。CSS 中有些属性值的定义就和这个 x-height 有关,最典型的代表就是 verticalalign:middle。这里的 middle 是中间的意思。vertical-align:middle 并不是绝对的垂直居中对齐,我们平常看到的middle 效果只是一种近似效果。原因很简单,因为不同的字体在行内盒子中的位置是不一样的。
5.1.3 字母 x 与 CSS 中的 ex。ex 是 CSS 中的一个相对单位,指的是小写字母 x 的高度,就是指 x-height。它不受字体和字号影响的内联元素的垂直居中对齐效果。
5.2.1 内联元素的高度之本—line-height。,<div>高度是由行高决定的,而非文字。内联元素的高度由固定高度和不固定高度组成,这个不固定的部分就是这里的“行距”。换句话说,line-height 之所以起作用,就是通过改变“行距”来实现的。
“行距”分散在当前文字的上方和下方,也就是即使是第一行文字,其上方也是有“行距”的,只不过这个“行距”的高度仅仅是完整“行距”高度的一半,因此,也被称为“半行距”。如果我们理解了半行距,结合我们网页中的设置的 line-height 大小,就能根据标注获取准确的间距值。举个例子,假设 line-height 是 1.5,font-size 大小是 14px,那么我们的半行距大小就是(套用上面的行距公式再除以 2):(14px * 1.5 - 14px) / 2 = 14px * 0.25 = 3.5px。