We should implement a :-moz-nth-column() pseudo-class that applies to table cells (and maybe table columns, although the utility there is limited). It should have syntax equivalent to the css3-selectors :nth-child pseudo-class described in http://www.w3.org/TR/css3-selectors/#nth-child-pseudo . I'd rather not implement all the other pseudo-classes similar to :nth-child, since I think things like :first-column, :last-column, and :only-column are less likely to be useful for columns than they are for children.
The :-moz-nth-column pseudo-class should operate on the semantic tabular structure of the document. It has no effect on things that are not semantically tabular, and it still works on something that is semantically tabular but displayed without display: table*.
This should be pretty easy to implement once bug 915 is fixed, since fixing bug 915 requires adding the ability to compute which column a cell is in.
PLEASE DO NOT COMMENT ON THIS BUG UNLESS YOUR COMMENT WILL CONTRIBUTE TO FIXING IT OR HELP YOU CONTRIBUTE TO FIXING IT.
Note that the naming of this pseudo-*class* should be distinguished from any pseudo-*element* for multi-column column boxes.
http://dev.w3.org/csswg/selectors4/#table-pseudos now as a draft of this selector, :nth-column(an+b) along with :nth-last-column(an+b) and :column(selector-list).