mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
layout: Rewrite Servo's vertical-align
support to match CSS 2.1 §
10.8, and implement `vertical-align: middle` per CSS 2.1 § 10.8.1. `InlineMetrics` has been split into `InlineMetrics` for fragments and `LineMetrics` for lines. Both structures' fields have been renamed in order to more clearly delineate the difference between *space* and *content*. Vertical positioning of fragments has been reworked to take margins and borders into account only for replaced content. This patch fixes the `vertical_align_super_a.html` reftest. Servo now matches the rendering that Gecko and WebKit produce. Additionally, this includes a test for the popular inline-block centering technique described here: https://s.codepen.io/shshaw/fullpage/gEiDt?#Inline-Block
This commit is contained in:
parent
56b41fa2ea
commit
773614f84c
35 changed files with 522 additions and 389 deletions
|
@ -1576,7 +1576,7 @@ impl ContainingBlockLink {
|
|||
if flow.is_block_like() {
|
||||
flow.as_block().explicit_block_containing_size(shared_context)
|
||||
} else if flow.is_inline_flow() {
|
||||
Some(flow.as_inline().minimum_block_size_above_baseline)
|
||||
Some(flow.as_inline().minimum_line_metrics.space_above_baseline)
|
||||
} else {
|
||||
None
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue