Runs your callback for every URL found in a string of CSS
JavaScript CSS
Switch branches/tags
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib
test
.gitignore
.jshintrc
.travis.yml
Gruntfile.js
README.md
package.json

README.md

css-url-rewriter Build Status

NPM

Simple function that looks for url(...) definitions in a string of CSS and runs them through your own rewriter function.

Getting Started

Install the module with: npm install css-url-rewriter

var rewriteCSSURLs = require('css-url-rewriter');

// example - add a query string to all URLs
var newCSS = rewriteCSSURLs(someCSS, function (url) {
  return url + '?12345';
});

It will process all URLs it encounters by default, even data: URIs, so you need to check for those manually if you want to handle them differently. The only exception is URLs in 'excluded properties' (see settings).

Settings

You can optionally pass in a settings object as a second argument:

var newCSS = rewriteCSSURLs(someCSS, settings, function (url) {
  return url + '?12345';
});

Currently there is only one configurable setting, excludedProperties, which is an array of properties that you want to skip. This setting defaults to ['behavior', '*behavior'] (because you usually don't want to mess with URLs in this proprietary MSIE property, because it has weird relativity rules).

License

Copyright (c) 2014 Callum Locke. Licensed under the MIT license.