mirror of
https://github.com/servo/servo.git
synced 2025-08-07 06:25:32 +01:00
layout: Incrementalize reflow of block formatting contexts impacted by
floats, and make float placement idempotent. This moves float placement outside sequential block size computation. Improves the maze solver.
This commit is contained in:
parent
be36fcd3b1
commit
55da2c97d5
11 changed files with 157 additions and 48 deletions
|
@ -184,3 +184,4 @@ fragment=top != ../html/acid2.html acid2_ref.html
|
|||
== linear_gradients_reverse_a.html linear_gradients_reverse_ref.html
|
||||
!= linear_gradients_corners_a.html linear_gradients_corners_ref.html
|
||||
== linear_gradients_lengths_a.html linear_gradients_lengths_ref.html
|
||||
== incremental_float_a.html incremental_float_ref.html
|
||||
|
|
36
tests/ref/incremental_float_a.html
Normal file
36
tests/ref/incremental_float_a.html
Normal file
|
@ -0,0 +1,36 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<style>
|
||||
nav.floaty {
|
||||
float: left;
|
||||
}
|
||||
section {
|
||||
clear: both;
|
||||
position: relative;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<section>
|
||||
<nav>This floats</nav>
|
||||
<div>This doesn't</div>
|
||||
</section>
|
||||
<section>
|
||||
<nav>This floats</nav>
|
||||
<div style="overflow: hidden;">This is a block formatting context</div>
|
||||
</section>
|
||||
<section>
|
||||
<nav>This floats</nav>
|
||||
<div style="position: absolute; top: 0; left: 0; width: 100px; height: 100px;">
|
||||
This is abspos
|
||||
</div>
|
||||
</section>
|
||||
<script>
|
||||
var elements = document.getElementsByTagName('nav');
|
||||
for (var i = 0; i < elements.length; i++)
|
||||
elements[i].setAttribute('class', 'floaty');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
31
tests/ref/incremental_float_ref.html
Normal file
31
tests/ref/incremental_float_ref.html
Normal file
|
@ -0,0 +1,31 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<style>
|
||||
nav {
|
||||
float: left;
|
||||
}
|
||||
section {
|
||||
clear: both;
|
||||
position: relative;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<section>
|
||||
<nav>This floats</nav>
|
||||
<div>This doesn't</div>
|
||||
</section>
|
||||
<section>
|
||||
<nav>This floats</nav>
|
||||
<div style="overflow: hidden;">This is a block formatting context</div>
|
||||
</section>
|
||||
<section>
|
||||
<nav>This floats</nav>
|
||||
<div style="position: absolute; top: 0; left: 0; width: 100px; height: 100px;">
|
||||
This is abspos
|
||||
</div>
|
||||
</section>
|
||||
</body>
|
||||
</html>
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue