Cannot use css 3d transforms in Opera 12.16

2.1k views Asked by At

the NVIDIA Quadro FX 1500 graphic adapter on my old XP system is fairly old and seems not on list of supported Chrome HW; however, I managed to enable 3d transforms on Chrome, using this:

  1. in address bar, go to chrome://flags/
  2. Override software rendering list -> enable

Now I'm looking for a similar trick to enable 3d css on Opera 12.16.

Testing is done with this page: http://jsfiddle.net/amustill/Qh8YV/ which displays a simple 3d rotated div. This test succeeds on FF, Safari, Chrome, but fails on Opera.

Similar result with this simple test:

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <style type="text/css">
        .outer {
            background-color: gold;
            width: 200px;
            height: 200px;
            position: relative;

            perspective: 300px;
            perspective-origin: 50% 50%;
            transform-style: preserve-3d;

            -o-perspective: 300px;
            -o-perspective-origin: 50% 50%;
            -o-transform-style: preserve-3d;

            -webkit-perspective: 300px;
            -webkit-perspective-origin: 50% 50%;
            -webkit-transform-style: preserve-3d;
        }
        .inner {
            text-align: center;
            background-color: red;
            width: 100px;
            height: 100px;
            position: absolute;
            top: 50px;
            left: 50px;
            font-family: Arial;
            font-weight: bold;

            transform: rotateY(45deg);
            -o-transform: rotateY(45deg);
            -webkit-transform: rotateY(45deg);
        }
    </style>
</head>
<body>

<div class="outer">
    <div class="inner">
        is this 3d?<br>
        is this 3d?<br>
        is this 3d?<br>
        is this 3d?<br>
        is this 3d?<br>
    </div>
</div>

</body>
</html>

The div is unrotated on Opera.

In Opera's error console I found these messages:

        perspective is an unknown property
              perspective: 300px;
  ------------------------^ Inlined stylesheet  3d.html:12
        perspective-origin is an unknown property
              perspective-origin: 50% 50%;
  -------------------------------^  Inlined stylesheet  3d.html:13
        transform-style is an unknown property
              transform-style: preserve-3d;
  ----------------------------^ Inlined stylesheet  3d.html:14
        -o-perspective is an unknown property
              -o-perspective: 300px;
  ---------------------------^  Inlined stylesheet  3d.html:16
        -o-perspective-origin is an unknown property
              -o-perspective-origin: 50% 50%;
  ----------------------------------^   Inlined stylesheet  3d.html:17
        -o-transform-style is an unknown property
              -o-transform-style: preserve-3d;
  -------------------------------^  Inlined stylesheet  3d.html:18
        -webkit-perspective is an unknown property
              -webkit-perspective: 300px;
  --------------------------------^ Inlined stylesheet  3d.html:20
        -webkit-perspective-origin is an unknown property
              -webkit-perspective-origin: 50% 50%;
  ---------------------------------------^  Inlined stylesheet  3d.html:21
        -webkit-transform-style is an unknown property
              -webkit-transform-style: preserve-3d;
  ------------------------------------^ Inlined stylesheet  3d.html:22
        Unrecognized function
              transform: rotateY(45deg);
  --------------------------------------^   Inlined stylesheet  3d.html:35
        Invalid value for property: transform
              transform: rotateY(45deg);
  --------------------------------------^   Inlined stylesheet  3d.html:35
        Unrecognized function
              -o-transform: rotateY(45deg);
  -----------------------------------------^    Inlined stylesheet  3d.html:36
        Invalid value for property: -o-transform
              -o-transform: rotateY(45deg);
  -----------------------------------------^    Inlined stylesheet  3d.html:36
        Unrecognized function
              -webkit-transform: rotateY(45deg);
  ----------------------------------------------^   Inlined stylesheet  3d.html:37
        Invalid value for property: -webkit-transform
              -webkit-transform: rotateY(45deg);
  ----------------------------------------------^

Chrome, Firefox:
Firefox

Opera:
Opera

Questions:

  1. DOES Opera support 3d transforms?
  2. If yes: what can the problem be - the old HW?, the code?
  3. Is there a workaround?
1

There are 1 answers

2
ndm On BEST ANSWER

Let me post this as an answer too, so that it's visible at a more prominent place.

Opera 12 and earlier do not support CSS 3D Transforms, they are available as of Opera 15, which is more or less a new browser based on Chromium.

So no need to worry, there is no workaround for this, it's simply not supported.

http://my.opera.com/securitygroup/blog/2013/07/02/opera-15 http://dev.opera.com/articles/view/understanding-3d-transforms/