layout: Use the border box, not the margin box, for placement of block

formatting contexts.

Improves Amazon.
This commit is contained in:
Patrick Walton 2015-05-01 15:11:46 -07:00
parent 5f6a740190
commit 986f81afa7
4 changed files with 55 additions and 3 deletions

View file

@ -1395,9 +1395,7 @@ impl BlockFlow {
}
let info = PlacementInfo {
size: LogicalSize::new(self.fragment.style.writing_mode,
self.base.position.size.inline,
self.fragment.border_box.size.block),
size: self.fragment.border_box.size,
ceiling: self.base.position.start.b,
max_inline_size: MAX_AU,
kind: FloatKind::Left,

View file

@ -66,6 +66,7 @@ flaky_cpu == append_style_a.html append_style_b.html
== block_formatting_context_cleared_float_a.html block_formatting_context_cleared_float_ref.html
== block_formatting_context_complex_a.html block_formatting_context_complex_ref.html
== block_formatting_context_containing_floats_a.html block_formatting_context_containing_floats_ref.html
== block_formatting_context_float_placement_a.html block_formatting_context_float_placement_ref.html
== block_formatting_context_relative_a.html block_formatting_context_ref.html
== block_formatting_context_translation_a.html block_formatting_context_translation_ref.html
== block_image.html 500x300_green.html

View file

@ -0,0 +1,28 @@
<!DOCTYPE html>
<html>
<head>
<style>
#nav-searchbar {
overflow: hidden;
}
.nav-submit-button {
float: right;
}
#nav-search-in {
float: left;
}
.nav-searchfield-width {
height: 35px;
overflow: hidden;
border: solid black 1px;
}
</style>
</head>
<body>
<form id="nav-searchbar">
<div class="nav-submit-button">Foo</div><span id="nav-search-in">Bar</span>
<div class="nav-searchfield-width"></div>
</form>
</body>
</html>

View file

@ -0,0 +1,25 @@
<!DOCTYPE html>
<html>
<head>
<style>
.nav-submit-button {
float: right;
}
#nav-search-in {
float: left;
}
.nav-searchfield-width {
height: 35px;
overflow: hidden;
border: solid black 1px;
}
</style>
</head>
<body>
<form id="nav-searchbar">
<div class="nav-submit-button">Foo</div><span id="nav-search-in">Bar</span>
<div class="nav-searchfield-width"></div>
</form>
</body>
</html>