<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>110056</bug_id>
          
          <creation_ts>2013-02-17 09:48:43 -0800</creation_ts>
          <short_desc>css3 transform can cause elements to not be rendered on screen</short_desc>
          <delta_ts>2024-07-01 17:33:43 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows 7</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>CONFIGURATION CHANGED</resolution>
          
          
          <bug_file_loc>http://jsfiddle.net/AxkEj/20/</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="asaf">asaf.mazar</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ahmad.saleem792</cc>
    
    <cc>bfulgham</cc>
    
    <cc>dino</cc>
    
    <cc>karlcow</cc>
    
    <cc>mattwoodrow</cc>
    
    <cc>rniwa</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zalan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>835000</commentid>
    <comment_count>0</comment_count>
    <who name="asaf">asaf.mazar</who>
    <bug_when>2013-02-17 09:48:43 -0800</bug_when>
    <thetext>when using css3 transform:rotate combined with transform:scale on elements whose dimensions are several hundred/thousand pixels,
once a threshold of size/number of elements is reached, parts of the page  are no longer rendered on the screen.

simplified test case available here: http://jsfiddle.net/aB4D5/5/
to reproduce bug, increase the value in the numeric pickers - causing the orange container div to grow in size.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>835001</commentid>
    <comment_count>1</comment_count>
      <attachid>188767</attachid>
    <who name="asaf">asaf.mazar</who>
    <bug_when>2013-02-17 09:58:04 -0800</bug_when>
    <thetext>Created attachment 188767
test page includes a large orange div scaled down by 90%. it contains 12 yellow divs. each yellow div has 4 child divs: one for each rotation (x, y, z, none) 

raise the value in left numeric picker to 8000 for guaranteed reproduction of bug.
you may find it useful to fine tune the values and/or add remove yellow divs to test the threshold needed to reproduce the behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>835614</commentid>
    <comment_count>2</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-02-18 10:38:43 -0800</bug_when>
    <thetext>The testcase is too confusing. Please make a simpler one where the bug reproduces just with a single :hover rule.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>836196</commentid>
    <comment_count>3</comment_count>
      <attachid>189043</attachid>
    <who name="asaf">asaf.mazar</who>
    <bug_when>2013-02-19 03:27:16 -0800</bug_when>
    <thetext>Created attachment 189043
as requested , the url links to a simplified test case with reproduction of bug on hover.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>836201</commentid>
    <comment_count>4</comment_count>
      <attachid>189045</attachid>
    <who name="asaf">asaf.mazar</who>
    <bug_when>2013-02-19 03:50:31 -0800</bug_when>
    <thetext>Created attachment 189045
added vendor prefixes for firefox and explorer

bug is not reproduced in:
windows 7 firefox 18.0.1 
windows 8 explorer 10</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>836456</commentid>
    <comment_count>5</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-02-19 09:03:04 -0800</bug_when>
    <thetext>Does the test case need all the colored shapes? Does it reproduce with just a single div that changes size?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>836494</commentid>
    <comment_count>6</comment_count>
      <attachid>189105</attachid>
    <who name="asaf">asaf.mazar</who>
    <bug_when>2013-02-19 09:49:13 -0800</bug_when>
    <thetext>Created attachment 189105
simplified test case with one yellow div containing only 2 rotated divs

note: bug did not reproduce with only one rotated div at increased size:  http://jsfiddle.net/AxkEj/29/
it appears that at least 2 rotated elements of large size are needed to reproduce the bug. it is not clear if transform scale is 
a prerequisite for reproduction of the bug.

related questions on stack overflow: 

http://stackoverflow.com/questions/10601359/chrome-css3-3d-transform-bug
http://stackoverflow.com/questions/14922254/intensive-use-of-css3transform-in-chrome-causes-parts-of-page-to-not-be-rendered</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840598</commentid>
    <comment_count>7</comment_count>
      <attachid>189974</attachid>
    <who name="asaf">asaf.mazar</who>
    <bug_when>2013-02-24 06:21:11 -0800</bug_when>
    <thetext>Created attachment 189974
further simplification of test case

Test results per browser on  full screen view (http://jsfiddle.net/AxkEj/35/embedded/result/)

On mouseover, rotation is applied to violet div on z axis by 45 degrees. 

Safari: 5.1.7: The rotated div disappears.
Chrome latest: entire page except orange and violet divs disappear.
Firefox:  All elements are visible. rotated element is skewed.

full screen : http://jsfiddle.net/AxkEj/35/embedded/result/

The bug is currently in unconfirmed status. What is required for the bug to be considered as confirmed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840721</commentid>
    <comment_count>8</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-02-24 23:25:48 -0800</bug_when>
    <thetext>.container, which has the rotateX, is intersecting with the body. This behavior isn&apos;t very interoperable.

In a recent WebKit nightly I see yet another behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>840796</commentid>
    <comment_count>9</comment_count>
    <who name="asaf">asaf.mazar</who>
    <bug_when>2013-02-25 01:36:46 -0800</bug_when>
    <thetext>Apparently intersection of elements is indeed a critical factor.
in chrome, screen paint irregularities
are reproduced here: http://jsfiddle.net/AxkEj/37/
but not here:       http://jsfiddle.net/AxkEj/38/

in safari, irregularities occur in both cases.

by using padding to distance the elements from edge of body,
the unexpected grid pattern on screen is not reproduced, but the blue squares(rotate x) still disappear.
http://jsfiddle.net/AxkEj/40/

In firefox, none of the unexpected behaviors are reproduced.

If I understand correctly, this bug is unconfirmed because the current behavior in webkit is an expected behavior. In other words, webkit, by intentional design design does not support the use of transform scale and rotate in the given scenario?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841010</commentid>
    <comment_count>10</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-02-25 09:05:59 -0800</bug_when>
    <thetext>WebKit (specifically Safari) has better intersection support than the other browsers. However, Safari does intersection in some cases where it should not, according to the CSS spec.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841993</commentid>
    <comment_count>11</comment_count>
    <who name="asaf">asaf.mazar</who>
    <bug_when>2013-02-26 07:48:21 -0800</bug_when>
    <thetext>Thank you for the clarification. Could you please provide links to the css spec relating to this issue? so far a web search for &apos;intersection support&apos; and &apos;css&apos; or &apos;web browser&apos; yields no relevant information.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>842069</commentid>
    <comment_count>12</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-02-26 09:11:31 -0800</bug_when>
    <thetext>http://dev.w3.org/csswg/css3-transforms/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891019</commentid>
    <comment_count>13</comment_count>
    <who name="Ahmad Saleem">ahmad.saleem792</who>
    <bug_when>2022-08-12 15:40:37 -0700</bug_when>
    <thetext>I am able to reproduce this bug using following test case in Safari Technical Preview 151:

Link - https://jsfiddle.net/AxkEj/35/show

On hover, the square does not rotate to show and it only show small bit. While all other browsers (Firefox Nightly 105 and Chrome Canary 106) works fine. I am changing the status to &quot;New&quot;. Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891020</commentid>
    <comment_count>14</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-08-12 15:42:49 -0700</bug_when>
    <thetext>&lt;rdar://problem/98590440&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2043949</commentid>
    <comment_count>15</comment_count>
    <who name="Ahmad Saleem">ahmad.saleem792</who>
    <bug_when>2024-07-01 05:33:35 -0700</bug_when>
    <thetext>Safari 17.5.1 , Chrome Canary 128 and Firefox Nightly 129 are working fine now on below test case:

Link - https://jsfiddle.net/AxkEj/35/

I think we can mark this as &apos;RESOLVED CONFIGURATION CHANGED&apos;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>188767</attachid>
            <date>2013-02-17 09:58:04 -0800</date>
            <delta_ts>2013-02-18 10:36:19 -0800</delta_ts>
            <desc>test page includes a large orange div scaled down by 90%. it contains 12 yellow divs. each yellow div has 4 child divs: one for each rotation (x, y, z, none) </desc>
            <filename>url.txt</filename>
            <type>text/plain</type>
            <size>28</size>
            <attacher name="asaf">asaf.mazar</attacher>
            
              <data encoding="base64">aHR0cDovL2pzZmlkZGxlLm5ldC9hQjRENS81Lw==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>189043</attachid>
            <date>2013-02-19 03:27:16 -0800</date>
            <delta_ts>2013-02-24 06:21:11 -0800</delta_ts>
            <desc>as requested , the url links to a simplified test case with reproduction of bug on hover.</desc>
            <filename>url.txt</filename>
            <type>text/plain</type>
            <size>28</size>
            <attacher name="asaf">asaf.mazar</attacher>
            
              <data encoding="base64">aHR0cDovL2pzZmlkZGxlLm5ldC9BeGtFai8xNw==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>189045</attachid>
            <date>2013-02-19 03:50:31 -0800</date>
            <delta_ts>2013-02-24 06:21:11 -0800</delta_ts>
            <desc>added vendor prefixes for firefox and explorer</desc>
            <filename>url.txt</filename>
            <type>text/plain</type>
            <size>29</size>
            <attacher name="asaf">asaf.mazar</attacher>
            
              <data encoding="base64">aHR0cDovL2pzZmlkZGxlLm5ldC9BeGtFai8yMC8=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>189105</attachid>
            <date>2013-02-19 09:49:13 -0800</date>
            <delta_ts>2013-02-24 06:21:11 -0800</delta_ts>
            <desc>simplified test case with one yellow div containing only 2 rotated divs</desc>
            <filename>url.txt</filename>
            <type>text/plain</type>
            <size>29</size>
            <attacher name="asaf">asaf.mazar</attacher>
            
              <data encoding="base64">aHR0cDovL2pzZmlkZGxlLm5ldC9BeGtFai8yOC8=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>189974</attachid>
            <date>2013-02-24 06:21:11 -0800</date>
            <delta_ts>2013-02-24 06:21:11 -0800</delta_ts>
            <desc>further simplification of test case</desc>
            <filename>url.txt</filename>
            <type>text/plain</type>
            <size>29</size>
            <attacher name="asaf">asaf.mazar</attacher>
            
              <data encoding="base64">aHR0cDovL2pzZmlkZGxlLm5ldC9BeGtFai8zNS8=
</data>

          </attachment>
      

    </bug>

</bugzilla>