“If you’re straight-out using CSS to hide text, don’t be surprised if that is called spam. I’m not saying that mouseovers or DHTML text or have-a-logo-but-also-have-text is spam; I answered that last one at a conference when I said “imagine how it would look to a visitor, a competitor, or someone checking out a spam report. If you show your company’s name and it’s Expo Markers instead of an Expo Markers logo, you should be fine. If the text you decide to show is ‘Expo Markers cheap online discount buy online Expo Markers sale …’ then I would be more cautious, because that can look bad.””
In addition to this insight, I have found that if CSS is used to benefit the user (tabbed information), and that we are not obviously black-hat stuffing keywords into hidden layers, the Search Engine Crawlers will typically not penalize the site. In other words, if we create the content for our pages within a tabbed structure built with layers hidden by CSS and displayed when called upon by the user, we should have no problems being indexed by search engines. Honestly, it’s not as ideal as stripping out that complex code and having a straight up block of content, but it will work, it enhances the user experience, and is recommended moving forward. "