Giter Club home page Giter Club logo

php-css-autoprefixer's Introduction

PHP CSS Autoprefixer

A simple CSS autoprefixer written in PHP to prefix according your desires minified CSS code on the server side.

Example

You can easily turn this code :

.myclass {
  color: red;
  clip-path: var(--primary);
  transition-duration: 3s;
}
@keyframes nameAnim {
  0%,
  100% {
    column-gap: 5px;
  }
}

Into this one :

.myclass {
  color: red;
  clip-path: var(--primary);
  -webkit-clip-path: var(--primary);
  transition-duration: 3s;
  -webkit-transition-duration: 3s;
  -o-transition-duration: 3s;
}
@-webkit-keyframes nameAnim {
  0%,
  100% {
    column-gap: 5px;
    -webkit-column-gap: 5px;
    -moz-column-gap: 5px;
  }
}
@keyframes nameAnim {
  0%,
  100% {
    column-gap: 5px;
    -webkit-column-gap: 5px;
    -moz-column-gap: 5px;
  }
}

Warning:

  • This plugin class doesn't support the @media and all the other CSS Rules (except @keyframes)
  • You must minify your CSS before compilation.

You can submit an pull request request if you are interested in any of these features.

Usage

$css = '.myclass{color:red;clip-path:var(--primary);transition-duration:3s;}@keyframes nameAnim{0%,100%{column-gap:5px;}}';

$autoprefixer = new CSS_Autoprefixer();
$autoprefixer->compile( $css );

Add custom supported properties

There is 5 methods to do this :

  • add_all_support
  • add_webkit_support
  • add_o_support
  • add_moz_support
  • add_ms_support

You can get a support list with a getter functions such as : get_webkit_support();

Example showing how to add custom supported properties

$css = '.myclass{color:red;clip-path:var(--primary);transition-duration:3s;}@keyframes nameAnim{0%,100%{column-gap:5px;}}';

$autoprefixer = new CSS_Autoprefixer();
$autoprefixer->add_webkit_support( array( 'mix-blend-mode', 'color' ) );
$autoprefixer->compile( $css );

// Output: .myclass{color:red;-webkit-color:red;clip-path:var(--primary);-webkit-clip-path:var(--primary);transition-duration:3s;-webkit-transition-duration:3s;-o-transition-duration:3s;}@-webkit-keyframes nameAnim{0%,100%{column-gap:5px;-webkit-column-gap:5px;-moz-column-gap:5px;}}@keyframes nameAnim{0%,100%{column-gap:5px;-webkit-column-gap:5px;-moz-column-gap:5px;}}

License

GPL licensed.

php-css-autoprefixer's People

Contributors

arnaudpfu avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.