Friday, April 13th, 2007

CSS and AJAX vs. Search Engines

Conference notes from the "CSS, AJAX, Web 2.0 & Search Engines" session at Search Engine Strategies New York '07.

Danny Sullivan

Shari Thurow, Webmaster/Marketing Director,
Jim McFadyen, Senior Web Developer, Critical Mass
Dan Crow, Product Manager, Google
Amit Kumar, Engineering Manager, Yahoo! Search

Shari Thurow, Webmaster/Marketing Director,

Make sure things that are clickable and things that aren't don't look clickable. Hidden links can be interpreted as search engine spam.

Beware of what happens when the user increases font size.

CSS has the advantage of being able to style heading tags (e.g. <h1>) which lets you use these valuable tools...

Objects with negative coordinates or really large, off-screen locations will be considered spam, same with hidden layers, small font sizes, etc.

Javascript drop-down menus are fine since they're intended for humans.

She recommends against using CSS to have the same content render differently on mobile devices - do a separate page.

Do not robots exclude stylesheets.

Realize that sometimes your page can perform better if you use images - but be careful - it's not always true and you should do testing (good for actions, not good for important text).

Ryan Johnston, Senior Web Developer & Jim McFadyen, Senior Web Developer, Critical Mass

AJAX is a combination of Javascript and XML. It's not a programming language, but a combination of technologies. It is not supported by search engines (content done via AJAX is invisible to spiders.). Users must have Javascript enabled for AJAX features to work.

Make sure every page is an HTML page that spiders can find. Things that run on the server are fine - it's what runs on the client that's a problem. Turn Javascript off to do testing to see if there are problems.

First, build the non-AJAX version - then layer on AJAX - then go back and make sure you didn't break things for people (and spiders) without Javascript.

Don't use AJAX just to use AJAX - use it to achieve a goal. For example, if you want to put content on a page which you don't want indexed on the page.

AJAX can break the normal browser refresh and page history. Get around this by faking an entry into the browser's history. If you use the # sign the search engines ignore everything after the # sign. So that's a good way to change browser history without disrupting things for the spiders. Example: For a bad example - see (turn off javascript to see problems).

Add AJAX as an enhancement, not a requirement (example:'s diamond pages)

Dan Crow, Product Manager, Google

Don't rely on the state of things today. In other words, Google intends to figure out some of the issues with AJAX and be able to crawl more than just straight HTML. Things behind Javascript will eventually be visible to the spiders.

Amit Kumar, Engineering Manager, Yahoo! Search

It's their job to figure out AJAX - so they can better understand the content available to users. They want to understand the page the way the user sees it.

AJAX is really no difference than POST forms - it hides data behind something spiders can't understand.

Also think about people who link to your content - do change the URLs otherwise people can't bookmark or link effectively.


The web developer plug-in is really handy to turn Javascript on and off.

When it comes to widgets... Attribution is important. But in the end do what you need to do give good content to the users and the engines will adapt.

It's unlikely that genuine content that's hidden for navigation issues and not spam will get marked as spam.

The problem with using #something is that all the PageRank goes to the home page and non-Javascript users don't go to the correct page.

You want to reduce "pogo sticking" where people are changing pages a lot - better to keep them on the same page. The quicker they changes pages the less likely it is that they'll convert.

If you have a white background, then a non-white background image, and then white text on top of the image the search engines will know that it's not white on white... Danny Sullivan is skeptical that they could figure out white background, black background image, black text - but he thinks that's won't be the only thing you're doing that's spammy and they'll catch you on other stuff.

Tags: , , ,
Categories: AJAX, CSS, Search Engines

Leave a Reply