2 <script src=
"resources/text-based-repaint.js"></script>
4 function changePositionKeepingGeometry(id
, newPosition
) {
5 var target
= document
.getElementById(id
);
6 var originalTop
= target
.offsetTop
;
7 var originalLeft
= target
.offsetLeft
;
8 target
.style
.position
= newPosition
;
9 target
.style
.top
= originalTop
+ 'px';
10 target
.style
.left
= originalLeft
+ 'px';
13 function repaintTest()
15 changePositionKeepingGeometry('target1', 'absolute');
16 changePositionKeepingGeometry('target2', 'absolute');
17 changePositionKeepingGeometry('target3', 'fixed');
19 onload
= runRepaintTest
;
29 background-color: blue;
50 There should be no invalildations on change of position without actual change of position and size.
51 <!-- target0 ensures we don't strip anonymous wrappers (and trigger a layout) when the other elements change position. -->
52 <div id=
"target0"></div>
53 <div id=
"target1"></div>
54 <div id=
"target2"></div>
55 <div id=
"target3"></div>