Well, you'll have to show the css for those two items. Does it say what's wrong, beyond the generic "parse error"? Are you using the w3c validator? Normally it says exactly what it doesn't like.
Are the pipes in your actual CSS or do they show up when you cut and paste?
Oh, hey, look what
I found [w3.org] in a part of the CSS specs I normally don't look at:
When a style sheet resides in a separate file, user agents must observe the following priorities when determining a style sheet's character encoding (from highest priority to lowest):
1. An HTTP "charset" parameter in a "Content-Type" field (or similar parameters in other protocols)
2. BOM and/or @charset (see below)
3. <link charset=""> or other metadata from the linking mechanism (if any)
4. charset of referring style sheet or document (if any)
5. Assume UTF-8
Authors using an @charset rule must place the rule at the very beginning of the style sheet, preceded by no characters. (If a byte order mark is appropriate for the encoding used, it may precede the @charset rule.)
(A byte order mark is never appropriate, but never mind that: It's a pretty old standard by now.)
Apostrophes have a function in CSS, but their function is equivalent to
:: drumroll ::
leaving it out entirely. So they can't be considered necessary. Except, oops, in /* comment lines */
The only place I've ever seen pipes is in the rare construction
[att|=val]
(Section 5.8.1 of CSS 2.1 spec, for the insatiably curious among you.)