Compass/compass

View on GitHub
compass-style.org/content/reference/compass/css3/pie.haml

Summary

Maintainability
Test Coverage
--- 
title: CSS3 Pie
crumb: CSS3 Pie
framework: compass
stylesheet: compass/css3/_pie.scss
meta_description: Compass integration with the css3pie tool.
layout: core
classnames:
  - reference
  - core
  - css3
---
- render 'reference' do
  :markdown
    ### Installing
    
    CSS PIE is a javascript library that enhances Internet Explorer
    to render many modern CSS3 capabilities wherever possible. To install:
    
        compass install compass/pie
    
    This will install an example stylesheet and a PIE.htc behavior file
    that must be loaded into your pages for IE. This file must be delivered
    with the following mime-type:
    
        Content-Type: text/x-component
    
    ### Conventions
    
    The example stylesheet will walk you through setting up your project with
    css3pie support.

    ### Properties Supported
    
    The following css3 properties are supported:
    
    * border-radius
    * box-shadow
    * border-image
    * background (in the form of -pie-background, use the [background mixin](/reference/compass/css3/images/#mixin-background))
    
    Additionally, PIE supports the following CSS3 features:
    
    * rgba color values
    * linear gradients in backgrounds
    
    [Full Documentation on Supported Properties](http://css3pie.com/documentation/supported-css3-features/)

    ### Caveats
    
    1. PIE only understands shortcut properties, long-hand properties don't
       work because the code, in order to be fast, does not attempt to resolve
       the stylesheet cascade and so it cannot determine which order to apply
       the long-hand properties.
    2. Each element that has a PIE behavior attached adds about 10ms to
       the page render time. Moderation is recommended.
    3. PIE generates content that contains the css3 graphical elements. It has to
       insert this content into your page and so it needs a little help from
       you. You have two choices:
       1. You can make your element `position: relative`.
       2. You can give your element a z-index. If you do this you
          should also give apply a z-index to an ancestor element that comes before
          or itself has a background.
       The compass mixins below and the example stylesheet will help get you set up.
    
    ### Best Practices
    
    It is suggested that you use Sass's `@extend` directive to mark elements as
    PIE elements. The example stylesheet you get when you install `compass/pie`
    into your project will walk you through the process of setting that up.
    
    ### Notes
    
    * For more information see the [css3pie website](http://css3pie.com/).
    * CSS PIE is written by and copyright to: [Jason Johnston](http://twitter.com/lojjic)
    * Compass is using css3pie version 1.0-beta3. It can be upgraded by downloading
      a new behavior file and replacing the one that comes with compass.