jenkinsci/jenkins — pull request #1326 by albers (2014-07-21 15:31:44+00:00)
Title: fix broken HTML tables

Whenever the taglib renders a help icon, it does so by outputting an **additional** `td` element, thus producing a table row that has one cell more than rows without any help items.
Current browsers are quite forgiving about missing cells and silently 'add' them when rendering the table, but still this is invalid HTML. Correcting this will ease any further transitions to `div` based layouts.

This PR ensures that in cases where a help icon could be rendered but no help is available, an empty `td`element is rendered.

The following screenshots illustrate the problem. They were taken with a current Firefox and the _Web Developer_ toolbar for highlighting the table structure.

Before:
![missing-table-cells](https://cloud.githubusercontent.com/assets/2901725/3645435/760aae36-10ea-11e4-8b8c-b0cec37d4e78.png)

After:
![added-table-cells](https://cloud.githubusercontent.com/assets/2901725/3645463/a0195150-10ea-11e4-8469-72edcf7e0bf7.png)

Overlaying both images shows that overall layout is not affected.
It might be affected in plugins, though, if they use hardcoded HTML in order to also correct the layout.

As I next step, I'm thinking of moving the rendering of help items into a new Jelly tag. This could help avoiding inconsistent HTML in the future