Quackit Logo
HTML
CSS
Scripting
Database
Hosting
Design
XML
IMCreator - Free Website Builder

CSS rotation

The CSS rotation-point property is used to define a "rotation point" when rotating an element using the rotation property.

Important Note: The rotation-point and rotation properties were proposed in the CSS Basic Box Model Level 3, which is now outdated.

To perform rotations in CSS, use the transform property instead (and its associated properties). Although this property is still in working draft status (at the time of writing), it appears to be the way forward when dealing with rotating HTML elements with CSS.

Syntax: rotation-point: <bg-position>
Example
rotation-point: 30% 45%;
rotation: 50deg;
Possible Values:

As per the W3C draft specification, here are the allowed values.

This property accepts a pair of values that defines a point as an offset from the top left border edge. Percentages refer to the width and height of the border box. Values may be negative.

<percentage> <percentage>
With a value pair of 0% 0%, the upper left corner of the image is aligned with the upper left corner of some area, usually the box's padding edge, but possibly the border edge, content edge or the viewport. A value pair of 100% 100% places the lower right corner of the image in the lower right corner of the area. With a value pair of 14% 84%, the point 14% across and 84% down the image is to be placed at the point 14% across and 84% down the area.
<length> <length>
With a value pair of 2cm 1cm, the upper left corner of the image is placed 2cm to the right and 1cm below the upper left corner of the area.
top left,
left top
Same as 0% 0%
top,
top center,
center top
Same as 50% 0%
right top,
top right
Same as 100% 0%
left,
left center,
center left
Same as 0% 50%
center
center center
Same as 50% 50%
right,
right center,
center right
Same as 100% 50%
bottom left
left bottom
Same as 0% 100%
bottom,
bottom center,
center bottom
Same as 50% 100%
bottom right
right bottom
Same as 100% 100%

If only one percentage or length value is given, it sets the horizontal position only, and the vertical position will be 50%. If two values are given, the horizontal position comes first. Combinations of keyword, length and percentage values are allowed, (e.g., 50% 2cm or center 2cm or center 10%). For combinations of keyword and non-keyword values, left and right may only be used as the first value, and top and bottom may only be used as the second value. Negative positions are allowed.

Initial Value: 50% 50%
Applies to: This property applies only to block-level elements
Inherited: No
Media: Visual
Computed Value: For the <length> the absolute value, otherwise a percentage.

Browser Compatibility

At the time of writing, CSS3 was still under development and browser support for many CSS3 properties was limited or non-existent. For maximum browser compatibility many web developers add browser-specific properties by using extensions such as -webkit- for Safari and Google Chrome, -ms- for Internet Explorer, -moz- for Firefox, -o- for Opera etc. As with any CSS property, if a browser doesn't support a proprietary extension, it will simply ignore it.

This practice is not recommended by the W3C, however in many cases, the only way you can test a property is to include the CSS extension that is compatible with your browser.

Be aware that if you choose to use the proprietary CSS extensions in a live environment, your code will not pass any W3C CSS validation, as the browser-specific properties are not valid W3C properties.

Many of the CSS3 examples on this website include these browser specific properties. If they weren't included, most of the examples wouldn't work for most users (at least, not until possibly years after the article was written).

The major browser manufacturers are working to support the W3C properties, and eventually, you will be able to omit these browser-specific properties.

Enjoy this page?

  1. Link to this page (copy/paste into your own website or blog):
  2. Link to Quackit using one of these banner ads.

Thanks for supporting Quackit!