Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Vertically centering text in HTML table cell in Java JLabel

I have an HTML table (styles with CSS) that is displayed in a JLabel. I would like the contents (a single, short line of text) of the cells to be both horizontally and vertically centered. Horizontal centering is easy, but I cannot seem to center the text vertically. I've tried vertical-align: and valign: with both middle and center arguments. I've looked at several of the tricks, but none of them seemed doable, and the ones I tried didn't work.

What I have now:

Inline (in the <style> tag) CSS:

table.outer {
    background:#F0F0F0;
    border-collapse:collapse;
    border:none;
}

td.outer {
    border-style:solid;
    border-width:1pt;
    border-color:#888888;
    padding:0pt 0pt 0pt 0pt;
}

table.inner {
    border-collapse:collapse;
    border:none;
}

td.title {
    width:75pt;
    background:#BFBFBF;
    padding:1.5pt 0pt 1.5pt 0pt;
}

The relevant portion of the HTML:

<body bgcolor=#F0F0F0>
<table class='outer'>
  <tr>
    <td class='outer' valign=top>
    <table class='inner'>
      <tr>
        <td class='title' rowspan=3>
          <p class='title'>Current Run</p>
        </td>
      </tr>
    </table>
    </td>
  </tr>
</table>
</body>
like image 771
Cajunluke Avatar asked Jul 22 '11 00:07

Cajunluke


1 Answers

Support for HTML in Swing Components is limited to 3.2, but valign="middle" should work.

like image 104
trashgod Avatar answered Sep 22 '22 02:09

trashgod