Thanks Tanya! This aproach works almost everytime except for situations when there is no reliable attribute and value to work with.
For example here's css path to find cell in a table:
html body table.frame_table tbody tr td.frame_body div#divDashBody table.dataGrid tbody tr#row.datacell2 td
The problem is this table is dynamic i.e. what you locate by this css path now might not be the same next minute.
The only reliable way to find cell is to use it's text content. In other words what this cell :contains. Currently I use xPath text()='some text' locator for this situations but I like locating elements by CSS locators way more :)