Bug 111329 - REGRESSION (258514@main): Transition of !important property fails to animate
Summary: REGRESSION (258514@main): Transition of !important property fails to animate
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Animations (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Antti Koivisto
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2013-03-04 07:37 PST by Daniel Trebbien
Modified: 2023-02-27 06:11 PST (History)
11 users (show)

See Also:


Attachments
Test case (985 bytes, text/html)
2013-03-04 07:37 PST, Daniel Trebbien
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Trebbien 2013-03-04 07:37:27 PST
Created attachment 191242 [details]
Test case

Please see the attached test case.  In Safari 6.0.2, Chrome 25.0.1364.152, Firefox 19.0, and IE 10, after clicking OK on the "starting" alert, the transition of background color from white to red begins and runs for 1 second until an intensive string computation starts.  While the string computation is running, no frames of the transition are painted, so the effect is that the background color jumps from a very light red to a deep red color when the string computation finishes.

Opera (version 12.14 tested) seems to be the only browser that continues to paint frames of the transition while the string computation is running.

This issue isn't as noticeable in desktop browsers as it is for mobile browsers, but it can be seen in desktop Chrome if a fair number of DOM modifications are made to set up a page of an HTML5 app.
Comment 1 Daniel Trebbien 2013-03-04 07:39:24 PST
https://bugzilla.mozilla.org/show_bug.cgi?id=847415
Comment 2 Ahmad Saleem 2023-02-24 15:09:46 PST
Safari 16.3 behavior is similar to Chrome Canary 112 while Safari Technology Preview 164 has regressed it and after clicking "Start", it just directly go to "Red" and does not have any transitions.

Firefox Nightly 112, Chrome Canary 112 & Safari 16.3 are matching but Safari Technology Preview 164 has regressed it.
Comment 3 Radar WebKit Bug Importer 2023-02-25 13:14:28 PST
<rdar://problem/105929421>
Comment 4 Antoine Quint 2023-02-25 13:33:51 PST
(In reply to Ahmad Saleem from comment #2)
> Safari 16.3 behavior is similar to Chrome Canary 112 while Safari Technology
> Preview 164 has regressed it and after clicking "Start", it just directly go
> to "Red" and does not have any transitions.
> 
> Firefox Nightly 112, Chrome Canary 112 & Safari 16.3 are matching but Safari
> Technology Preview 164 has regressed it.

Thanks for catching this Ahmad! This regressed with 258514@main.
Comment 5 Antti Koivisto 2023-02-27 03:07:43 PST
Transitions have higher precedence then !important (unlike animations).
Comment 6 Antti Koivisto 2023-02-27 03:08:03 PST
Reduced test case

<style>
#theBox {
    width: 200px;
    height: 200px;
    transition: background-color 20s;
}
.red {
    background-color: red !important;
}
</style>
<div id="theBox"></div>
<script>
document.body.offsetLeft;
theBox.className = "red";
</script>
Comment 7 Antti Koivisto 2023-02-27 03:38:40 PST
Pull request: https://github.com/WebKit/WebKit/pull/10719
Comment 8 Antti Koivisto 2023-02-27 04:47:01 PST
Submitted web-platform-tests pull request: https://github.com/web-platform-tests/wpt/pull/38719
Comment 9 EWS 2023-02-27 06:11:43 PST
Committed 260880@main (e0fa0f2073f1): <https://commits.webkit.org/260880@main>

Reviewed commits have been landed. Closing PR #10719 and removing active labels.