Targeting specific elements with CSS only This code below works as needed, but I am not sure if there is a more elegant way with pure CSS. I have a table with two columns, and 4+ rows. I'll actually upload a picture.  It's the first table in grey that I am messing with.



I want to select all the TDs--except for the first TD, because that first one has been changed to vertical text--and give them a 100% width and text align center. Any thoughts?

.greyBG tr:nth-of-type(1) ~ tr &gt; td {
    width: 100%;
    text-align: center;
}


And the HTML:



&lt;table class="greyBG"&gt;
         &lt;tbody&gt;
            &lt;tr&gt;
               &lt;td rowspan="5" class="tableHeader"&gt;Landscape&lt;/td&gt;
            &lt;/tr&gt;
            &lt;tr&gt;
               &lt;td&gt;Lorum Ipsum&lt;/td&gt;
             &lt;/tr&gt;
             &lt;tr&gt;
                &lt;td&gt;Lorum Ipsum&lt;/td&gt;
              &lt;/tr&gt;
              &lt;tr&gt;
                 &lt;td&gt;Lorum Ipsum&lt;/td&gt;
              &lt;/tr&gt;
              &lt;tr&gt;
                  &lt;td&gt;Lorum Ipsum&lt;/td&gt;
              &lt;/tr&gt;
           &lt;/tbody&gt;
     &lt;/table&gt;
Markup

If you have a td that you're giving a class that indicates that it is some sort of heading, you should be using a th instead.  The th element is allowed to appear in a tbody, it isn't restricted to thead.

When validated, this table will generate warnings regarding different numbers of cells in each row.  The correct structure should look like this:

&lt;table class="greyBG"&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;th rowspan="4"&gt;Landscape&lt;/th&gt;
            &lt;td&gt;Lorum Ipsum&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;Lorum Ipsum&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;Lorum Ipsum&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;td&gt;Lorum Ipsum&lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;


Be consistent with your indentation.

CSS

Now that the markup is simplified, it's child's play to simplify the CSS

.greyBG td {
    width: 100%;
    text-align: center;
}


Demo:  http://codepen.io/cimmanon/pen/GqKcx