Auto merge of #13329 - pcwalton:last-line-in-flow, r=notriddle

layout: Make `baseline_offset_of_last_line_box_in_flow()` only check blocks in flow.

Improves python.org.

Closes #12124.

r? @notriddle

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13329)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2016-09-19 22:45:55 -05:00 committed by GitHub
commit 53938c439f
4 changed files with 95 additions and 1 deletions

View file

@ -1405,7 +1405,8 @@ impl<'a> ImmutableFlowUtils for &'a Flow {
return kid.as_inline().baseline_offset_of_last_line()
}
if kid.is_block_like() &&
kid.as_block().formatting_context_type() == FormattingContextType::None {
kid.as_block().formatting_context_type() == FormattingContextType::None &&
!base(kid).flags.contains(IS_ABSOLUTELY_POSITIONED) {
if let Some(baseline_offset) = kid.baseline_offset_of_last_line_box_in_flow() {
return Some(base(kid).position.start.b + baseline_offset)
}

View file

@ -2496,6 +2496,18 @@
"url": "/_mozilla/css/inline_block_border_intrinsic_size_a.html"
}
],
"css/inline_block_height_with_out_of_flow_child_a.html": [
{
"path": "css/inline_block_height_with_out_of_flow_child_a.html",
"references": [
[
"/_mozilla/css/inline_block_height_with_out_of_flow_child_ref.html",
"=="
]
],
"url": "/_mozilla/css/inline_block_height_with_out_of_flow_child_a.html"
}
],
"css/inline_block_img_a.html": [
{
"path": "css/inline_block_img_a.html",
@ -11932,6 +11944,18 @@
"url": "/_mozilla/css/inline_block_border_intrinsic_size_a.html"
}
],
"css/inline_block_height_with_out_of_flow_child_a.html": [
{
"path": "css/inline_block_height_with_out_of_flow_child_a.html",
"references": [
[
"/_mozilla/css/inline_block_height_with_out_of_flow_child_ref.html",
"=="
]
],
"url": "/_mozilla/css/inline_block_height_with_out_of_flow_child_a.html"
}
],
"css/inline_block_img_a.html": [
{
"path": "css/inline_block_img_a.html",

View file

@ -0,0 +1,35 @@
<!DOCTYPE html>
<html>
<head>
<link rel="match" href="inline_block_height_with_out_of_flow_child_ref.html">
<style>
.options-bar {
background-color: lightblue;
color: white;
}
.winkwink-nudgenudge {
display: inline-block;
}
.tier-1 {
position: relative;
}
.subnav {
position: absolute;
top: 100px;
}
</style>
</head>
<body>
<div class="options-bar">
<div class="winkwink-nudgenudge">
<div class="tier-1">
<div class="subnav">A</div>
</div>
</div>
</div>
</body>
</html>

View file

@ -0,0 +1,34 @@
<!DOCTYPE html>
<html>
<head>
<style>
.options-bar {
background-color: lightblue;
color: white;
}
.winkwink-nudgenudge {
display: inline-block;
}
.tier-1 {
position: relative;
}
.subnav {
position: absolute;
top: 100px;
}
</style>
</head>
<body>
<div class="options-bar">
<div class="winkwink-nudgenudge">
<div class="tier-1">
</div>
</div>
</div>
</body>
</html>