Man Linux: Main Page and Category List


       csstidy - CSS parser and optimiser


       csstidy input-file [options] [output-file]


       The csstidy(1) command parses and optimises a css file given as
       input-file. If no output-file is specified, the results are displayed
       to standard output. Various options allow for fine-grained control over
       the level of readability, file size and other items.

       If you use the filename "-", csstidy reads from stdin. In most case you
       will probably find that csstidy defaults are reasonable and applicable
       to most situations.

       Note that csstidy is not designed to be a css validator. Although you
       should only enter valid (or rather well-formed) code, csstidy will also
       parse and fix incorrect code.


       To optimise a CSS file and send the output to screen use:
           csstidy mycssfile.css

       If you want to save the output to a file, use:
           csstidy mycssfile.css myoutputfile.css

       If you want to use an option[s] and output to a file, use:
           csstidy mycssfile.css --lowercase_s=true myoutputfile.css


           default = false

           Case for properties. Default = false.

           If set to true, csstidy will optimize color value by trying to save
           bytes (i.e. black becomes #000). Default = true.

           If set to true, csstidy will optimize font value by trying to save
           bytes (i.e. normal becomes 400). Default = true.

           If set to true, csstidy will remove invalid properties. In a sense
           this is like validation, except you get no warnings unless you
           study the output. As an example, if you misspelled the property
           "width" as "with", that property will simply be removed. Default =

           If set to true, all uppercase selectors (i.e. A, P, SPAN) will be
           rewritten in lowercase. Default = false.

           All comments and most browser specific hacks will be removed if
           this is set to false. Setting this to true will preserve browser
           specific hacks. Default = false.

           Remove unnecessary backslashes. This may or may not be desirable
           depending upon whether you have used backslashes to accomodate
           browsers that do not comply with w3c standards. Default = true.

           Default = false.

           When set to true, csstidy will not output information about the
           optimizations preformed. Default = false.

           Sorts properties (i.e. background, color, width) of selectors.
           Default = false.

           Sorts selectors. Use this with caution, as it will totally
           rearrange any sense of layout in your file that you may have
           written into it, and css is sensitive to order. Sorts in order of
           ID’s, classes and then selectors. Default = false.

           If set to true, adds a comment enclosed timestamp to the top of the
           output. Default = false.

           If selectors (including ID’s and classes) have identical
           properties, then csstidy will merge them. A setting of 2 represents
           a high degree of merging. 0 represents no merging. Default = 2.

           If set to 2, csstidy will invoke all optimisations. 0 represents no
           optimisations, and 1 a safe level of optimatisations. Default = 1.

           Affects how much whitespace is removed and ultimately the
           readability of the output.


       The following is a list of all CSS hacks that will not be modified by
       default by csstidy. If you enable "preserve CSS", more hacks will be
       saved. In general you should do without CSS hacks anyway, but if you
       need them and want to use csstidy you should use one of the following

           p\roperty:value; (only if you disable the removal of unnecessary backslashes)
           head:first-child+body div
           html[xmlns] div
           @import "null?\"\\{"; @import "styles.css"; (and all other @import rules)
           @media all{/\* rules \*/}
           * html div
           i\{content:"\"/*"\} div\{property:value\}


       Written by Florian Schmitz <>


       Main web site:

       This manual page was written by Kevin Coyner <> for
       the Debian project but may be used by others.